code dump

master
q3k 2019-03-11 20:28:59 +01:00
parent 6269824571
commit ecac445dfb
6 changed files with 226 additions and 433 deletions

View File

@ -22,8 +22,10 @@ message Invoice {
repeated ContactPoint invoicer_contact = 3; repeated ContactPoint invoicer_contact = 3;
repeated string customer_billing = 4; repeated string customer_billing = 4;
string invoicer_vat_id = 5; string invoicer_vat_id = 5;
string invoicer_company_number = 12;
string customer_vat_id = 6; string customer_vat_id = 6;
bool reverse_vat = 7; bool reverse_vat = 7;
bool us_customer = 11;
int64 days_due = 8; int64 days_due = 8;
string iban = 9; string iban = 9;
string swift = 10; string swift = 10;

View File

@ -11,13 +11,13 @@ import (
"google.golang.org/grpc/reflection" "google.golang.org/grpc/reflection"
"google.golang.org/grpc/status" "google.golang.org/grpc/status"
"code.hackerspace.pl/q3k/hspki"
pb "code.hackerspace.pl/q3k/inboice/proto" pb "code.hackerspace.pl/q3k/inboice/proto"
) )
var ( var (
flagListenAddress string flagListenAddress string
flagInit bool flagInit bool
flagDisablePKI bool
) )
type service struct { type service struct {
@ -145,6 +145,7 @@ func (s *service) RenderInvoice(req *pb.RenderInvoiceRequest, srv pb.Inboice_Ren
return status.Error(codes.Unavailable, "internal server error") return status.Error(codes.Unavailable, "internal server error")
} }
glog.Infof("%+v", invoice)
rendered, err = renderInvoicePDF(invoice, "xxxx", true) rendered, err = renderInvoicePDF(invoice, "xxxx", true)
if err != nil { if err != nil {
glog.Errorf("renderProformaPDF(_): %v", err) glog.Errorf("renderProformaPDF(_): %v", err)
@ -203,7 +204,7 @@ func main() {
glog.Exitf("net.Listen(tcp, %q): %v", flagListenAddress, err) glog.Exitf("net.Listen(tcp, %q): %v", flagListenAddress, err)
} }
grpcSrv := grpc.NewServer(hspki.WithServerHSPKI()...) grpcSrv := grpc.NewServer()
pb.RegisterInboiceServer(grpcSrv, s) pb.RegisterInboiceServer(grpcSrv, s)
reflection.Register(grpcSrv) reflection.Register(grpcSrv)

View File

@ -72,7 +72,7 @@ func (m *model) sealInvoice(ctx context.Context, uid string) error {
invoice_id, final_uid invoice_id, final_uid
) values ( ) values (
?, ?,
( select printf("%04d", ifnull( (select final_uid as v from invoice_seal order by final_uid desc limit 1), 7) + 1 )) ( select printf("%04d", ifnull( (select final_uid as v from invoice_seal order by final_uid desc limit 1), 19000) + 1 ))
) )
` `

View File

@ -1,18 +1,38 @@
// Code generated by protoc-gen-go. DO NOT EDIT. // Code generated by protoc-gen-go. DO NOT EDIT.
// source: inboice.proto // source: inboice.proto
/*
Package proto is a generated protocol buffer package.
It is generated from these files:
inboice.proto
It has these top-level messages:
Item
ContactPoint
Invoice
CreateInvoiceRequest
CreateInvoiceResponse
GetInvoiceRequest
GetInvoiceResponse
RenderInvoiceRequest
RenderInvoiceResponse
SealInvoiceRequest
SealInvoiceResponse
*/
package proto package proto
import proto1 "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import ( import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
context "golang.org/x/net/context" context "golang.org/x/net/context"
grpc "google.golang.org/grpc" grpc "google.golang.org/grpc"
math "math"
) )
// Reference imports to suppress errors if they are not otherwise used. // Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal var _ = proto1.Marshal
var _ = fmt.Errorf var _ = fmt.Errorf
var _ = math.Inf var _ = math.Inf
@ -20,7 +40,7 @@ var _ = math.Inf
// is compatible with the proto package it is being compiled against. // is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the // A compilation error at this line likely means your copy of the
// proto package needs to be updated. // proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package const _ = proto1.ProtoPackageIsVersion2 // please upgrade the proto package
type GetInvoiceResponse_State int32 type GetInvoiceResponse_State int32
@ -35,7 +55,6 @@ var GetInvoiceResponse_State_name = map[int32]string{
1: "STATE_PROFORMA", 1: "STATE_PROFORMA",
2: "STATE_SEALED", 2: "STATE_SEALED",
} }
var GetInvoiceResponse_State_value = map[string]int32{ var GetInvoiceResponse_State_value = map[string]int32{
"STATE_INVALID": 0, "STATE_INVALID": 0,
"STATE_PROFORMA": 1, "STATE_PROFORMA": 1,
@ -43,49 +62,23 @@ var GetInvoiceResponse_State_value = map[string]int32{
} }
func (x GetInvoiceResponse_State) String() string { func (x GetInvoiceResponse_State) String() string {
return proto.EnumName(GetInvoiceResponse_State_name, int32(x)) return proto1.EnumName(GetInvoiceResponse_State_name, int32(x))
}
func (GetInvoiceResponse_State) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_aca47770af3442cd, []int{6, 0}
} }
func (GetInvoiceResponse_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{6, 0} }
type Item struct { type Item struct {
Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` Title string `protobuf:"bytes,1,opt,name=title" json:"title,omitempty"`
Count uint64 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` Count uint64 `protobuf:"varint,2,opt,name=count" json:"count,omitempty"`
UnitPrice uint64 `protobuf:"varint,3,opt,name=unit_price,json=unitPrice,proto3" json:"unit_price,omitempty"` UnitPrice uint64 `protobuf:"varint,3,opt,name=unit_price,json=unitPrice" json:"unit_price,omitempty"`
// in thousands of percent points // in thousands of percent points
// (ie 23% == 23000) // (ie 23% == 23000)
Vat uint64 `protobuf:"varint,4,opt,name=vat,proto3" json:"vat,omitempty"` Vat uint64 `protobuf:"varint,4,opt,name=vat" json:"vat,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *Item) Reset() { *m = Item{} } func (m *Item) Reset() { *m = Item{} }
func (m *Item) String() string { return proto.CompactTextString(m) } func (m *Item) String() string { return proto1.CompactTextString(m) }
func (*Item) ProtoMessage() {} func (*Item) ProtoMessage() {}
func (*Item) Descriptor() ([]byte, []int) { func (*Item) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
return fileDescriptor_aca47770af3442cd, []int{0}
}
func (m *Item) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Item.Unmarshal(m, b)
}
func (m *Item) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Item.Marshal(b, m, deterministic)
}
func (m *Item) XXX_Merge(src proto.Message) {
xxx_messageInfo_Item.Merge(m, src)
}
func (m *Item) XXX_Size() int {
return xxx_messageInfo_Item.Size(m)
}
func (m *Item) XXX_DiscardUnknown() {
xxx_messageInfo_Item.DiscardUnknown(m)
}
var xxx_messageInfo_Item proto.InternalMessageInfo
func (m *Item) GetTitle() string { func (m *Item) GetTitle() string {
if m != nil { if m != nil {
@ -116,37 +109,14 @@ func (m *Item) GetVat() uint64 {
} }
type ContactPoint struct { type ContactPoint struct {
Medium string `protobuf:"bytes,1,opt,name=medium,proto3" json:"medium,omitempty"` Medium string `protobuf:"bytes,1,opt,name=medium" json:"medium,omitempty"`
Contact string `protobuf:"bytes,2,opt,name=contact,proto3" json:"contact,omitempty"` Contact string `protobuf:"bytes,2,opt,name=contact" json:"contact,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *ContactPoint) Reset() { *m = ContactPoint{} } func (m *ContactPoint) Reset() { *m = ContactPoint{} }
func (m *ContactPoint) String() string { return proto.CompactTextString(m) } func (m *ContactPoint) String() string { return proto1.CompactTextString(m) }
func (*ContactPoint) ProtoMessage() {} func (*ContactPoint) ProtoMessage() {}
func (*ContactPoint) Descriptor() ([]byte, []int) { func (*ContactPoint) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
return fileDescriptor_aca47770af3442cd, []int{1}
}
func (m *ContactPoint) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContactPoint.Unmarshal(m, b)
}
func (m *ContactPoint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ContactPoint.Marshal(b, m, deterministic)
}
func (m *ContactPoint) XXX_Merge(src proto.Message) {
xxx_messageInfo_ContactPoint.Merge(m, src)
}
func (m *ContactPoint) XXX_Size() int {
return xxx_messageInfo_ContactPoint.Size(m)
}
func (m *ContactPoint) XXX_DiscardUnknown() {
xxx_messageInfo_ContactPoint.DiscardUnknown(m)
}
var xxx_messageInfo_ContactPoint proto.InternalMessageInfo
func (m *ContactPoint) GetMedium() string { func (m *ContactPoint) GetMedium() string {
if m != nil { if m != nil {
@ -163,45 +133,24 @@ func (m *ContactPoint) GetContact() string {
} }
type Invoice struct { type Invoice struct {
Item []*Item `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"` Item []*Item `protobuf:"bytes,1,rep,name=item" json:"item,omitempty"`
InvoicerBilling []string `protobuf:"bytes,2,rep,name=invoicer_billing,json=invoicerBilling,proto3" json:"invoicer_billing,omitempty"` InvoicerBilling []string `protobuf:"bytes,2,rep,name=invoicer_billing,json=invoicerBilling" json:"invoicer_billing,omitempty"`
InvoicerContact []*ContactPoint `protobuf:"bytes,3,rep,name=invoicer_contact,json=invoicerContact,proto3" json:"invoicer_contact,omitempty"` InvoicerContact []*ContactPoint `protobuf:"bytes,3,rep,name=invoicer_contact,json=invoicerContact" json:"invoicer_contact,omitempty"`
CustomerBilling []string `protobuf:"bytes,4,rep,name=customer_billing,json=customerBilling,proto3" json:"customer_billing,omitempty"` CustomerBilling []string `protobuf:"bytes,4,rep,name=customer_billing,json=customerBilling" json:"customer_billing,omitempty"`
InvoicerVatId string `protobuf:"bytes,5,opt,name=invoicer_vat_id,json=invoicerVatId,proto3" json:"invoicer_vat_id,omitempty"` InvoicerVatId string `protobuf:"bytes,5,opt,name=invoicer_vat_id,json=invoicerVatId" json:"invoicer_vat_id,omitempty"`
CustomerVatId string `protobuf:"bytes,6,opt,name=customer_vat_id,json=customerVatId,proto3" json:"customer_vat_id,omitempty"` InvoicerCompanyNumber string `protobuf:"bytes,12,opt,name=invoicer_company_number,json=invoicerCompanyNumber" json:"invoicer_company_number,omitempty"`
ReverseVat bool `protobuf:"varint,7,opt,name=reverse_vat,json=reverseVat,proto3" json:"reverse_vat,omitempty"` CustomerVatId string `protobuf:"bytes,6,opt,name=customer_vat_id,json=customerVatId" json:"customer_vat_id,omitempty"`
DaysDue int64 `protobuf:"varint,8,opt,name=days_due,json=daysDue,proto3" json:"days_due,omitempty"` ReverseVat bool `protobuf:"varint,7,opt,name=reverse_vat,json=reverseVat" json:"reverse_vat,omitempty"`
Iban string `protobuf:"bytes,9,opt,name=iban,proto3" json:"iban,omitempty"` UsCustomer bool `protobuf:"varint,11,opt,name=us_customer,json=usCustomer" json:"us_customer,omitempty"`
Swift string `protobuf:"bytes,10,opt,name=swift,proto3" json:"swift,omitempty"` DaysDue int64 `protobuf:"varint,8,opt,name=days_due,json=daysDue" json:"days_due,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"` Iban string `protobuf:"bytes,9,opt,name=iban" json:"iban,omitempty"`
XXX_unrecognized []byte `json:"-"` Swift string `protobuf:"bytes,10,opt,name=swift" json:"swift,omitempty"`
XXX_sizecache int32 `json:"-"`
} }
func (m *Invoice) Reset() { *m = Invoice{} } func (m *Invoice) Reset() { *m = Invoice{} }
func (m *Invoice) String() string { return proto.CompactTextString(m) } func (m *Invoice) String() string { return proto1.CompactTextString(m) }
func (*Invoice) ProtoMessage() {} func (*Invoice) ProtoMessage() {}
func (*Invoice) Descriptor() ([]byte, []int) { func (*Invoice) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
return fileDescriptor_aca47770af3442cd, []int{2}
}
func (m *Invoice) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Invoice.Unmarshal(m, b)
}
func (m *Invoice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Invoice.Marshal(b, m, deterministic)
}
func (m *Invoice) XXX_Merge(src proto.Message) {
xxx_messageInfo_Invoice.Merge(m, src)
}
func (m *Invoice) XXX_Size() int {
return xxx_messageInfo_Invoice.Size(m)
}
func (m *Invoice) XXX_DiscardUnknown() {
xxx_messageInfo_Invoice.DiscardUnknown(m)
}
var xxx_messageInfo_Invoice proto.InternalMessageInfo
func (m *Invoice) GetItem() []*Item { func (m *Invoice) GetItem() []*Item {
if m != nil { if m != nil {
@ -238,6 +187,13 @@ func (m *Invoice) GetInvoicerVatId() string {
return "" return ""
} }
func (m *Invoice) GetInvoicerCompanyNumber() string {
if m != nil {
return m.InvoicerCompanyNumber
}
return ""
}
func (m *Invoice) GetCustomerVatId() string { func (m *Invoice) GetCustomerVatId() string {
if m != nil { if m != nil {
return m.CustomerVatId return m.CustomerVatId
@ -252,6 +208,13 @@ func (m *Invoice) GetReverseVat() bool {
return false return false
} }
func (m *Invoice) GetUsCustomer() bool {
if m != nil {
return m.UsCustomer
}
return false
}
func (m *Invoice) GetDaysDue() int64 { func (m *Invoice) GetDaysDue() int64 {
if m != nil { if m != nil {
return m.DaysDue return m.DaysDue
@ -274,36 +237,13 @@ func (m *Invoice) GetSwift() string {
} }
type CreateInvoiceRequest struct { type CreateInvoiceRequest struct {
Invoice *Invoice `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"` Invoice *Invoice `protobuf:"bytes,1,opt,name=invoice" json:"invoice,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *CreateInvoiceRequest) Reset() { *m = CreateInvoiceRequest{} } func (m *CreateInvoiceRequest) Reset() { *m = CreateInvoiceRequest{} }
func (m *CreateInvoiceRequest) String() string { return proto.CompactTextString(m) } func (m *CreateInvoiceRequest) String() string { return proto1.CompactTextString(m) }
func (*CreateInvoiceRequest) ProtoMessage() {} func (*CreateInvoiceRequest) ProtoMessage() {}
func (*CreateInvoiceRequest) Descriptor() ([]byte, []int) { func (*CreateInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
return fileDescriptor_aca47770af3442cd, []int{3}
}
func (m *CreateInvoiceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateInvoiceRequest.Unmarshal(m, b)
}
func (m *CreateInvoiceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CreateInvoiceRequest.Marshal(b, m, deterministic)
}
func (m *CreateInvoiceRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CreateInvoiceRequest.Merge(m, src)
}
func (m *CreateInvoiceRequest) XXX_Size() int {
return xxx_messageInfo_CreateInvoiceRequest.Size(m)
}
func (m *CreateInvoiceRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CreateInvoiceRequest.DiscardUnknown(m)
}
var xxx_messageInfo_CreateInvoiceRequest proto.InternalMessageInfo
func (m *CreateInvoiceRequest) GetInvoice() *Invoice { func (m *CreateInvoiceRequest) GetInvoice() *Invoice {
if m != nil { if m != nil {
@ -314,36 +254,13 @@ func (m *CreateInvoiceRequest) GetInvoice() *Invoice {
type CreateInvoiceResponse struct { type CreateInvoiceResponse struct {
// Unique invoice ID // Unique invoice ID
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"` Uid string `protobuf:"bytes,1,opt,name=uid" json:"uid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *CreateInvoiceResponse) Reset() { *m = CreateInvoiceResponse{} } func (m *CreateInvoiceResponse) Reset() { *m = CreateInvoiceResponse{} }
func (m *CreateInvoiceResponse) String() string { return proto.CompactTextString(m) } func (m *CreateInvoiceResponse) String() string { return proto1.CompactTextString(m) }
func (*CreateInvoiceResponse) ProtoMessage() {} func (*CreateInvoiceResponse) ProtoMessage() {}
func (*CreateInvoiceResponse) Descriptor() ([]byte, []int) { func (*CreateInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
return fileDescriptor_aca47770af3442cd, []int{4}
}
func (m *CreateInvoiceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateInvoiceResponse.Unmarshal(m, b)
}
func (m *CreateInvoiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CreateInvoiceResponse.Marshal(b, m, deterministic)
}
func (m *CreateInvoiceResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_CreateInvoiceResponse.Merge(m, src)
}
func (m *CreateInvoiceResponse) XXX_Size() int {
return xxx_messageInfo_CreateInvoiceResponse.Size(m)
}
func (m *CreateInvoiceResponse) XXX_DiscardUnknown() {
xxx_messageInfo_CreateInvoiceResponse.DiscardUnknown(m)
}
var xxx_messageInfo_CreateInvoiceResponse proto.InternalMessageInfo
func (m *CreateInvoiceResponse) GetUid() string { func (m *CreateInvoiceResponse) GetUid() string {
if m != nil { if m != nil {
@ -353,36 +270,13 @@ func (m *CreateInvoiceResponse) GetUid() string {
} }
type GetInvoiceRequest struct { type GetInvoiceRequest struct {
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"` Uid string `protobuf:"bytes,1,opt,name=uid" json:"uid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *GetInvoiceRequest) Reset() { *m = GetInvoiceRequest{} } func (m *GetInvoiceRequest) Reset() { *m = GetInvoiceRequest{} }
func (m *GetInvoiceRequest) String() string { return proto.CompactTextString(m) } func (m *GetInvoiceRequest) String() string { return proto1.CompactTextString(m) }
func (*GetInvoiceRequest) ProtoMessage() {} func (*GetInvoiceRequest) ProtoMessage() {}
func (*GetInvoiceRequest) Descriptor() ([]byte, []int) { func (*GetInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
return fileDescriptor_aca47770af3442cd, []int{5}
}
func (m *GetInvoiceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetInvoiceRequest.Unmarshal(m, b)
}
func (m *GetInvoiceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetInvoiceRequest.Marshal(b, m, deterministic)
}
func (m *GetInvoiceRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetInvoiceRequest.Merge(m, src)
}
func (m *GetInvoiceRequest) XXX_Size() int {
return xxx_messageInfo_GetInvoiceRequest.Size(m)
}
func (m *GetInvoiceRequest) XXX_DiscardUnknown() {
xxx_messageInfo_GetInvoiceRequest.DiscardUnknown(m)
}
var xxx_messageInfo_GetInvoiceRequest proto.InternalMessageInfo
func (m *GetInvoiceRequest) GetUid() string { func (m *GetInvoiceRequest) GetUid() string {
if m != nil { if m != nil {
@ -392,38 +286,15 @@ func (m *GetInvoiceRequest) GetUid() string {
} }
type GetInvoiceResponse struct { type GetInvoiceResponse struct {
Invoice *Invoice `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"` Invoice *Invoice `protobuf:"bytes,1,opt,name=invoice" json:"invoice,omitempty"`
State GetInvoiceResponse_State `protobuf:"varint,2,opt,name=state,proto3,enum=proto.GetInvoiceResponse_State" json:"state,omitempty"` State GetInvoiceResponse_State `protobuf:"varint,2,opt,name=state,enum=proto.GetInvoiceResponse_State" json:"state,omitempty"`
FinalUid string `protobuf:"bytes,3,opt,name=final_uid,json=finalUid,proto3" json:"final_uid,omitempty"` FinalUid string `protobuf:"bytes,3,opt,name=final_uid,json=finalUid" json:"final_uid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *GetInvoiceResponse) Reset() { *m = GetInvoiceResponse{} } func (m *GetInvoiceResponse) Reset() { *m = GetInvoiceResponse{} }
func (m *GetInvoiceResponse) String() string { return proto.CompactTextString(m) } func (m *GetInvoiceResponse) String() string { return proto1.CompactTextString(m) }
func (*GetInvoiceResponse) ProtoMessage() {} func (*GetInvoiceResponse) ProtoMessage() {}
func (*GetInvoiceResponse) Descriptor() ([]byte, []int) { func (*GetInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
return fileDescriptor_aca47770af3442cd, []int{6}
}
func (m *GetInvoiceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetInvoiceResponse.Unmarshal(m, b)
}
func (m *GetInvoiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetInvoiceResponse.Marshal(b, m, deterministic)
}
func (m *GetInvoiceResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetInvoiceResponse.Merge(m, src)
}
func (m *GetInvoiceResponse) XXX_Size() int {
return xxx_messageInfo_GetInvoiceResponse.Size(m)
}
func (m *GetInvoiceResponse) XXX_DiscardUnknown() {
xxx_messageInfo_GetInvoiceResponse.DiscardUnknown(m)
}
var xxx_messageInfo_GetInvoiceResponse proto.InternalMessageInfo
func (m *GetInvoiceResponse) GetInvoice() *Invoice { func (m *GetInvoiceResponse) GetInvoice() *Invoice {
if m != nil { if m != nil {
@ -447,36 +318,13 @@ func (m *GetInvoiceResponse) GetFinalUid() string {
} }
type RenderInvoiceRequest struct { type RenderInvoiceRequest struct {
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"` Uid string `protobuf:"bytes,1,opt,name=uid" json:"uid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *RenderInvoiceRequest) Reset() { *m = RenderInvoiceRequest{} } func (m *RenderInvoiceRequest) Reset() { *m = RenderInvoiceRequest{} }
func (m *RenderInvoiceRequest) String() string { return proto.CompactTextString(m) } func (m *RenderInvoiceRequest) String() string { return proto1.CompactTextString(m) }
func (*RenderInvoiceRequest) ProtoMessage() {} func (*RenderInvoiceRequest) ProtoMessage() {}
func (*RenderInvoiceRequest) Descriptor() ([]byte, []int) { func (*RenderInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
return fileDescriptor_aca47770af3442cd, []int{7}
}
func (m *RenderInvoiceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RenderInvoiceRequest.Unmarshal(m, b)
}
func (m *RenderInvoiceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RenderInvoiceRequest.Marshal(b, m, deterministic)
}
func (m *RenderInvoiceRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_RenderInvoiceRequest.Merge(m, src)
}
func (m *RenderInvoiceRequest) XXX_Size() int {
return xxx_messageInfo_RenderInvoiceRequest.Size(m)
}
func (m *RenderInvoiceRequest) XXX_DiscardUnknown() {
xxx_messageInfo_RenderInvoiceRequest.DiscardUnknown(m)
}
var xxx_messageInfo_RenderInvoiceRequest proto.InternalMessageInfo
func (m *RenderInvoiceRequest) GetUid() string { func (m *RenderInvoiceRequest) GetUid() string {
if m != nil { if m != nil {
@ -486,36 +334,13 @@ func (m *RenderInvoiceRequest) GetUid() string {
} }
type RenderInvoiceResponse struct { type RenderInvoiceResponse struct {
Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *RenderInvoiceResponse) Reset() { *m = RenderInvoiceResponse{} } func (m *RenderInvoiceResponse) Reset() { *m = RenderInvoiceResponse{} }
func (m *RenderInvoiceResponse) String() string { return proto.CompactTextString(m) } func (m *RenderInvoiceResponse) String() string { return proto1.CompactTextString(m) }
func (*RenderInvoiceResponse) ProtoMessage() {} func (*RenderInvoiceResponse) ProtoMessage() {}
func (*RenderInvoiceResponse) Descriptor() ([]byte, []int) { func (*RenderInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
return fileDescriptor_aca47770af3442cd, []int{8}
}
func (m *RenderInvoiceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RenderInvoiceResponse.Unmarshal(m, b)
}
func (m *RenderInvoiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RenderInvoiceResponse.Marshal(b, m, deterministic)
}
func (m *RenderInvoiceResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_RenderInvoiceResponse.Merge(m, src)
}
func (m *RenderInvoiceResponse) XXX_Size() int {
return xxx_messageInfo_RenderInvoiceResponse.Size(m)
}
func (m *RenderInvoiceResponse) XXX_DiscardUnknown() {
xxx_messageInfo_RenderInvoiceResponse.DiscardUnknown(m)
}
var xxx_messageInfo_RenderInvoiceResponse proto.InternalMessageInfo
func (m *RenderInvoiceResponse) GetData() []byte { func (m *RenderInvoiceResponse) GetData() []byte {
if m != nil { if m != nil {
@ -525,36 +350,13 @@ func (m *RenderInvoiceResponse) GetData() []byte {
} }
type SealInvoiceRequest struct { type SealInvoiceRequest struct {
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"` Uid string `protobuf:"bytes,1,opt,name=uid" json:"uid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *SealInvoiceRequest) Reset() { *m = SealInvoiceRequest{} } func (m *SealInvoiceRequest) Reset() { *m = SealInvoiceRequest{} }
func (m *SealInvoiceRequest) String() string { return proto.CompactTextString(m) } func (m *SealInvoiceRequest) String() string { return proto1.CompactTextString(m) }
func (*SealInvoiceRequest) ProtoMessage() {} func (*SealInvoiceRequest) ProtoMessage() {}
func (*SealInvoiceRequest) Descriptor() ([]byte, []int) { func (*SealInvoiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
return fileDescriptor_aca47770af3442cd, []int{9}
}
func (m *SealInvoiceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SealInvoiceRequest.Unmarshal(m, b)
}
func (m *SealInvoiceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SealInvoiceRequest.Marshal(b, m, deterministic)
}
func (m *SealInvoiceRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_SealInvoiceRequest.Merge(m, src)
}
func (m *SealInvoiceRequest) XXX_Size() int {
return xxx_messageInfo_SealInvoiceRequest.Size(m)
}
func (m *SealInvoiceRequest) XXX_DiscardUnknown() {
xxx_messageInfo_SealInvoiceRequest.DiscardUnknown(m)
}
var xxx_messageInfo_SealInvoiceRequest proto.InternalMessageInfo
func (m *SealInvoiceRequest) GetUid() string { func (m *SealInvoiceRequest) GetUid() string {
if m != nil { if m != nil {
@ -564,94 +366,26 @@ func (m *SealInvoiceRequest) GetUid() string {
} }
type SealInvoiceResponse struct { type SealInvoiceResponse struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *SealInvoiceResponse) Reset() { *m = SealInvoiceResponse{} } func (m *SealInvoiceResponse) Reset() { *m = SealInvoiceResponse{} }
func (m *SealInvoiceResponse) String() string { return proto.CompactTextString(m) } func (m *SealInvoiceResponse) String() string { return proto1.CompactTextString(m) }
func (*SealInvoiceResponse) ProtoMessage() {} func (*SealInvoiceResponse) ProtoMessage() {}
func (*SealInvoiceResponse) Descriptor() ([]byte, []int) { func (*SealInvoiceResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
return fileDescriptor_aca47770af3442cd, []int{10}
}
func (m *SealInvoiceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SealInvoiceResponse.Unmarshal(m, b)
}
func (m *SealInvoiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SealInvoiceResponse.Marshal(b, m, deterministic)
}
func (m *SealInvoiceResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_SealInvoiceResponse.Merge(m, src)
}
func (m *SealInvoiceResponse) XXX_Size() int {
return xxx_messageInfo_SealInvoiceResponse.Size(m)
}
func (m *SealInvoiceResponse) XXX_DiscardUnknown() {
xxx_messageInfo_SealInvoiceResponse.DiscardUnknown(m)
}
var xxx_messageInfo_SealInvoiceResponse proto.InternalMessageInfo
func init() { func init() {
proto.RegisterEnum("proto.GetInvoiceResponse_State", GetInvoiceResponse_State_name, GetInvoiceResponse_State_value) proto1.RegisterType((*Item)(nil), "proto.Item")
proto.RegisterType((*Item)(nil), "proto.Item") proto1.RegisterType((*ContactPoint)(nil), "proto.ContactPoint")
proto.RegisterType((*ContactPoint)(nil), "proto.ContactPoint") proto1.RegisterType((*Invoice)(nil), "proto.Invoice")
proto.RegisterType((*Invoice)(nil), "proto.Invoice") proto1.RegisterType((*CreateInvoiceRequest)(nil), "proto.CreateInvoiceRequest")
proto.RegisterType((*CreateInvoiceRequest)(nil), "proto.CreateInvoiceRequest") proto1.RegisterType((*CreateInvoiceResponse)(nil), "proto.CreateInvoiceResponse")
proto.RegisterType((*CreateInvoiceResponse)(nil), "proto.CreateInvoiceResponse") proto1.RegisterType((*GetInvoiceRequest)(nil), "proto.GetInvoiceRequest")
proto.RegisterType((*GetInvoiceRequest)(nil), "proto.GetInvoiceRequest") proto1.RegisterType((*GetInvoiceResponse)(nil), "proto.GetInvoiceResponse")
proto.RegisterType((*GetInvoiceResponse)(nil), "proto.GetInvoiceResponse") proto1.RegisterType((*RenderInvoiceRequest)(nil), "proto.RenderInvoiceRequest")
proto.RegisterType((*RenderInvoiceRequest)(nil), "proto.RenderInvoiceRequest") proto1.RegisterType((*RenderInvoiceResponse)(nil), "proto.RenderInvoiceResponse")
proto.RegisterType((*RenderInvoiceResponse)(nil), "proto.RenderInvoiceResponse") proto1.RegisterType((*SealInvoiceRequest)(nil), "proto.SealInvoiceRequest")
proto.RegisterType((*SealInvoiceRequest)(nil), "proto.SealInvoiceRequest") proto1.RegisterType((*SealInvoiceResponse)(nil), "proto.SealInvoiceResponse")
proto.RegisterType((*SealInvoiceResponse)(nil), "proto.SealInvoiceResponse") proto1.RegisterEnum("proto.GetInvoiceResponse_State", GetInvoiceResponse_State_name, GetInvoiceResponse_State_value)
}
func init() { proto.RegisterFile("inboice.proto", fileDescriptor_aca47770af3442cd) }
var fileDescriptor_aca47770af3442cd = []byte{
// 623 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdf, 0x4f, 0x13, 0x41,
0x10, 0xf6, 0x7a, 0x57, 0xda, 0x4e, 0x29, 0x96, 0x01, 0xcc, 0x02, 0x1a, 0x9a, 0x4b, 0x24, 0x47,
0x4c, 0x88, 0xa9, 0xf1, 0xd5, 0x50, 0x29, 0x9a, 0x1a, 0x14, 0xb2, 0x45, 0x5e, 0x2f, 0xdb, 0xbb,
0xc5, 0x6c, 0xd2, 0xde, 0xe1, 0xdd, 0x5e, 0x8d, 0xff, 0x93, 0x7f, 0x8e, 0x7f, 0x8b, 0xcf, 0x66,
0x7f, 0x5c, 0x29, 0xf4, 0x0c, 0x3e, 0x75, 0xe7, 0x9b, 0x6f, 0xbf, 0xf9, 0x76, 0x66, 0xae, 0xd0,
0x11, 0xc9, 0x24, 0x15, 0x11, 0x3f, 0xbe, 0xcd, 0x52, 0x99, 0x62, 0x5d, 0xff, 0xf8, 0x11, 0x78,
0x23, 0xc9, 0x67, 0xb8, 0x0d, 0x75, 0x29, 0xe4, 0x94, 0x13, 0xa7, 0xe7, 0x04, 0x2d, 0x6a, 0x02,
0x85, 0x46, 0x69, 0x91, 0x48, 0x52, 0xeb, 0x39, 0x81, 0x47, 0x4d, 0x80, 0x2f, 0x00, 0x8a, 0x44,
0xc8, 0xf0, 0x36, 0x13, 0x11, 0x27, 0xae, 0x4e, 0xb5, 0x14, 0x72, 0xa9, 0x00, 0xec, 0x82, 0x3b,
0x67, 0x92, 0x78, 0x1a, 0x57, 0x47, 0xff, 0x04, 0xd6, 0x4f, 0xd3, 0x44, 0xb2, 0x48, 0x5e, 0xa6,
0x22, 0x91, 0xf8, 0x0c, 0xd6, 0x66, 0x3c, 0x16, 0xc5, 0xcc, 0x56, 0xb3, 0x11, 0x12, 0x68, 0x44,
0x86, 0xa7, 0x0b, 0xb6, 0x68, 0x19, 0xfa, 0x7f, 0x6a, 0xd0, 0x18, 0x25, 0x73, 0xe5, 0x1f, 0x0f,
0xc0, 0x13, 0x92, 0xab, 0xbb, 0x6e, 0xd0, 0xee, 0xb7, 0xcd, 0x7b, 0x8e, 0xd5, 0x2b, 0xa8, 0x4e,
0xe0, 0x11, 0x74, 0x85, 0xe1, 0x66, 0xe1, 0x44, 0x4c, 0xa7, 0x22, 0xf9, 0x46, 0x6a, 0x3d, 0x37,
0x68, 0xd1, 0xa7, 0x25, 0xfe, 0xde, 0xc0, 0xf8, 0x6e, 0x89, 0x5a, 0x96, 0x76, 0xb5, 0xee, 0x96,
0xd5, 0x5d, 0x36, 0x7e, 0x77, 0xdf, 0xa2, 0xaa, 0x54, 0x54, 0xe4, 0x32, 0x9d, 0x2d, 0x95, 0xf2,
0x4c, 0xa9, 0x12, 0x2f, 0x4b, 0x1d, 0xc2, 0xe2, 0x76, 0x38, 0x67, 0x32, 0x14, 0x31, 0xa9, 0xeb,
0x47, 0x76, 0x4a, 0xf8, 0x9a, 0xc9, 0x51, 0xac, 0x78, 0x0b, 0x49, 0xcb, 0x5b, 0x33, 0xbc, 0x12,
0x36, 0xbc, 0x03, 0x68, 0x67, 0x7c, 0xce, 0xb3, 0x9c, 0x2b, 0x1a, 0x69, 0xf4, 0x9c, 0xa0, 0x49,
0xc1, 0x42, 0xd7, 0x4c, 0xe2, 0x2e, 0x34, 0x63, 0xf6, 0x33, 0x0f, 0xe3, 0x82, 0x93, 0x66, 0xcf,
0x09, 0x5c, 0xda, 0x50, 0xf1, 0xb0, 0xe0, 0x88, 0xe0, 0x89, 0x09, 0x4b, 0x48, 0x4b, 0x0b, 0xeb,
0xb3, 0x9a, 0x75, 0xfe, 0x43, 0xdc, 0x48, 0x02, 0x66, 0x03, 0x74, 0xe0, 0x9f, 0xc0, 0xf6, 0x69,
0xc6, 0x99, 0xe4, 0xb6, 0xfb, 0x94, 0x7f, 0x2f, 0x78, 0x2e, 0x31, 0x80, 0x86, 0xb5, 0xad, 0x67,
0xd8, 0xee, 0x6f, 0x94, 0x73, 0xb0, 0xbc, 0x32, 0xed, 0x1f, 0xc1, 0xce, 0x03, 0x85, 0xfc, 0x36,
0x4d, 0x72, 0xbd, 0x27, 0x85, 0x88, 0xed, 0x0a, 0xa8, 0xa3, 0xff, 0x12, 0x36, 0x3f, 0x72, 0xf9,
0xa0, 0xd2, 0x2a, 0xed, 0xb7, 0x03, 0xb8, 0xcc, 0xb3, 0x7a, 0xff, 0x6d, 0x09, 0xdf, 0x42, 0x3d,
0x97, 0x4c, 0x72, 0xbd, 0x65, 0x1b, 0xfd, 0x03, 0xcb, 0x5b, 0xd5, 0x3c, 0x1e, 0x2b, 0x1a, 0x35,
0x6c, 0xdc, 0x87, 0xd6, 0x8d, 0x48, 0xd8, 0x34, 0x54, 0x7e, 0x5c, 0xed, 0xa7, 0xa9, 0x81, 0xaf,
0x22, 0xf6, 0x4f, 0xa0, 0xae, 0xc9, 0xb8, 0x09, 0x9d, 0xf1, 0xd5, 0xe0, 0xea, 0x2c, 0x1c, 0x7d,
0xb9, 0x1e, 0x9c, 0x8f, 0x86, 0xdd, 0x27, 0x88, 0xb0, 0x61, 0xa0, 0x4b, 0x7a, 0xf1, 0xe1, 0x82,
0x7e, 0x1e, 0x74, 0x1d, 0xec, 0xc2, 0xba, 0xc1, 0xc6, 0x67, 0x83, 0xf3, 0xb3, 0x61, 0xb7, 0xe6,
0x07, 0xb0, 0x4d, 0x79, 0x12, 0xf3, 0xec, 0xd1, 0x06, 0xbc, 0x82, 0x9d, 0x07, 0x4c, 0xdb, 0x02,
0x04, 0x2f, 0x66, 0x92, 0x69, 0xee, 0x3a, 0xd5, 0x67, 0xff, 0x10, 0x70, 0xcc, 0xd9, 0xf4, 0x51,
0xd1, 0x1d, 0xd8, 0xba, 0xc7, 0x33, 0x92, 0xfd, 0x5f, 0xfa, 0xcb, 0xd3, 0xff, 0x1c, 0xf8, 0x09,
0x3a, 0xf7, 0x46, 0x89, 0xfb, 0xe5, 0x47, 0x52, 0xb1, 0x22, 0x7b, 0xcf, 0xab, 0x93, 0xd6, 0xea,
0x00, 0xe0, 0xae, 0xdf, 0x48, 0x2a, 0x46, 0x60, 0x54, 0x76, 0xff, 0x39, 0x1c, 0x3c, 0x87, 0xce,
0xbd, 0x36, 0x2c, 0xec, 0x54, 0xb5, 0x71, 0x61, 0xa7, 0xb2, 0x73, 0xaf, 0x1d, 0x1c, 0x42, 0x7b,
0xe9, 0xfd, 0x58, 0xd6, 0x5d, 0xed, 0xdd, 0xde, 0x5e, 0x55, 0xca, 0xe8, 0x4c, 0xd6, 0x74, 0xea,
0xcd, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xba, 0xc3, 0xf1, 0x18, 0x6e, 0x05, 0x00, 0x00,
} }
// Reference imports to suppress errors if they are not otherwise used. // Reference imports to suppress errors if they are not otherwise used.
@ -662,9 +396,8 @@ var _ grpc.ClientConn
// is compatible with the grpc package it is being compiled against. // is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4 const _ = grpc.SupportPackageIsVersion4
// InboiceClient is the client API for Inboice service. // Client API for Inboice service
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type InboiceClient interface { type InboiceClient interface {
CreateInvoice(ctx context.Context, in *CreateInvoiceRequest, opts ...grpc.CallOption) (*CreateInvoiceResponse, error) CreateInvoice(ctx context.Context, in *CreateInvoiceRequest, opts ...grpc.CallOption) (*CreateInvoiceResponse, error)
GetInvoice(ctx context.Context, in *GetInvoiceRequest, opts ...grpc.CallOption) (*GetInvoiceResponse, error) GetInvoice(ctx context.Context, in *GetInvoiceRequest, opts ...grpc.CallOption) (*GetInvoiceResponse, error)
@ -682,7 +415,7 @@ func NewInboiceClient(cc *grpc.ClientConn) InboiceClient {
func (c *inboiceClient) CreateInvoice(ctx context.Context, in *CreateInvoiceRequest, opts ...grpc.CallOption) (*CreateInvoiceResponse, error) { func (c *inboiceClient) CreateInvoice(ctx context.Context, in *CreateInvoiceRequest, opts ...grpc.CallOption) (*CreateInvoiceResponse, error) {
out := new(CreateInvoiceResponse) out := new(CreateInvoiceResponse)
err := c.cc.Invoke(ctx, "/proto.Inboice/CreateInvoice", in, out, opts...) err := grpc.Invoke(ctx, "/proto.Inboice/CreateInvoice", in, out, c.cc, opts...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -691,7 +424,7 @@ func (c *inboiceClient) CreateInvoice(ctx context.Context, in *CreateInvoiceRequ
func (c *inboiceClient) GetInvoice(ctx context.Context, in *GetInvoiceRequest, opts ...grpc.CallOption) (*GetInvoiceResponse, error) { func (c *inboiceClient) GetInvoice(ctx context.Context, in *GetInvoiceRequest, opts ...grpc.CallOption) (*GetInvoiceResponse, error) {
out := new(GetInvoiceResponse) out := new(GetInvoiceResponse)
err := c.cc.Invoke(ctx, "/proto.Inboice/GetInvoice", in, out, opts...) err := grpc.Invoke(ctx, "/proto.Inboice/GetInvoice", in, out, c.cc, opts...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -699,7 +432,7 @@ func (c *inboiceClient) GetInvoice(ctx context.Context, in *GetInvoiceRequest, o
} }
func (c *inboiceClient) RenderInvoice(ctx context.Context, in *RenderInvoiceRequest, opts ...grpc.CallOption) (Inboice_RenderInvoiceClient, error) { func (c *inboiceClient) RenderInvoice(ctx context.Context, in *RenderInvoiceRequest, opts ...grpc.CallOption) (Inboice_RenderInvoiceClient, error) {
stream, err := c.cc.NewStream(ctx, &_Inboice_serviceDesc.Streams[0], "/proto.Inboice/RenderInvoice", opts...) stream, err := grpc.NewClientStream(ctx, &_Inboice_serviceDesc.Streams[0], c.cc, "/proto.Inboice/RenderInvoice", opts...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -732,14 +465,15 @@ func (x *inboiceRenderInvoiceClient) Recv() (*RenderInvoiceResponse, error) {
func (c *inboiceClient) SealInvoice(ctx context.Context, in *SealInvoiceRequest, opts ...grpc.CallOption) (*SealInvoiceResponse, error) { func (c *inboiceClient) SealInvoice(ctx context.Context, in *SealInvoiceRequest, opts ...grpc.CallOption) (*SealInvoiceResponse, error) {
out := new(SealInvoiceResponse) out := new(SealInvoiceResponse)
err := c.cc.Invoke(ctx, "/proto.Inboice/SealInvoice", in, out, opts...) err := grpc.Invoke(ctx, "/proto.Inboice/SealInvoice", in, out, c.cc, opts...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
return out, nil return out, nil
} }
// InboiceServer is the server API for Inboice service. // Server API for Inboice service
type InboiceServer interface { type InboiceServer interface {
CreateInvoice(context.Context, *CreateInvoiceRequest) (*CreateInvoiceResponse, error) CreateInvoice(context.Context, *CreateInvoiceRequest) (*CreateInvoiceResponse, error)
GetInvoice(context.Context, *GetInvoiceRequest) (*GetInvoiceResponse, error) GetInvoice(context.Context, *GetInvoiceRequest) (*GetInvoiceResponse, error)
@ -852,3 +586,51 @@ var _Inboice_serviceDesc = grpc.ServiceDesc{
}, },
Metadata: "inboice.proto", Metadata: "inboice.proto",
} }
func init() { proto1.RegisterFile("inboice.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 663 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdf, 0x4f, 0x13, 0x41,
0x10, 0xf6, 0x7a, 0x2d, 0x6d, 0xa7, 0x2d, 0x96, 0x81, 0xea, 0x02, 0x1a, 0x9a, 0x4b, 0x24, 0x47,
0x4c, 0x88, 0xa9, 0xd1, 0x47, 0x43, 0xa5, 0x68, 0x6a, 0x10, 0xc8, 0x15, 0x79, 0xbd, 0x6c, 0xef,
0x16, 0xb3, 0x49, 0xbb, 0x57, 0xef, 0xf6, 0x6a, 0xf8, 0x9f, 0xfc, 0x5f, 0x7c, 0xf1, 0x0f, 0x32,
0xfb, 0xe3, 0x4a, 0x81, 0x1a, 0x7c, 0xea, 0xce, 0x37, 0xdf, 0x7e, 0xf3, 0xed, 0xcc, 0x5c, 0xa1,
0xc5, 0xc5, 0x38, 0xe1, 0x11, 0x3b, 0x9c, 0xa5, 0x89, 0x4c, 0xb0, 0xa2, 0x7f, 0xbc, 0x08, 0xca,
0x43, 0xc9, 0xa6, 0xb8, 0x05, 0x15, 0xc9, 0xe5, 0x84, 0x11, 0xa7, 0xeb, 0xf8, 0xf5, 0xc0, 0x04,
0x0a, 0x8d, 0x92, 0x5c, 0x48, 0x52, 0xea, 0x3a, 0x7e, 0x39, 0x30, 0x01, 0xbe, 0x04, 0xc8, 0x05,
0x97, 0xe1, 0x2c, 0xe5, 0x11, 0x23, 0xae, 0x4e, 0xd5, 0x15, 0x72, 0xa1, 0x00, 0x6c, 0x83, 0x3b,
0xa7, 0x92, 0x94, 0x35, 0xae, 0x8e, 0xde, 0x11, 0x34, 0x8f, 0x13, 0x21, 0x69, 0x24, 0x2f, 0x12,
0x2e, 0x24, 0x3e, 0x83, 0xb5, 0x29, 0x8b, 0x79, 0x3e, 0xb5, 0xd5, 0x6c, 0x84, 0x04, 0xaa, 0x91,
0xe1, 0xe9, 0x82, 0xf5, 0xa0, 0x08, 0xbd, 0xdf, 0x2e, 0x54, 0x87, 0x62, 0xae, 0xfc, 0xe3, 0x1e,
0x94, 0xb9, 0x64, 0xea, 0xae, 0xeb, 0x37, 0x7a, 0x0d, 0xf3, 0x9e, 0x43, 0xf5, 0x8a, 0x40, 0x27,
0xf0, 0x00, 0xda, 0xdc, 0x70, 0xd3, 0x70, 0xcc, 0x27, 0x13, 0x2e, 0xbe, 0x93, 0x52, 0xd7, 0xf5,
0xeb, 0xc1, 0xd3, 0x02, 0xff, 0x68, 0x60, 0xfc, 0xb0, 0x44, 0x2d, 0x4a, 0xbb, 0x5a, 0x77, 0xd3,
0xea, 0x2e, 0x1b, 0xbf, 0xbd, 0x6f, 0x51, 0x55, 0x2a, 0xca, 0x33, 0x99, 0x4c, 0x97, 0x4a, 0x95,
0x4d, 0xa9, 0x02, 0x2f, 0x4a, 0xed, 0xc3, 0xe2, 0x76, 0x38, 0xa7, 0x32, 0xe4, 0x31, 0xa9, 0xe8,
0x47, 0xb6, 0x0a, 0xf8, 0x8a, 0xca, 0x61, 0x8c, 0xef, 0xe1, 0xf9, 0x92, 0xa5, 0xe9, 0x8c, 0x8a,
0x9b, 0x50, 0xe4, 0xd3, 0x31, 0x4b, 0x49, 0x53, 0xf3, 0x3b, 0xb7, 0x26, 0x74, 0xf6, 0x4c, 0x27,
0x95, 0xfe, 0xc2, 0x8a, 0xd5, 0x5f, 0x33, 0xfa, 0x05, 0x6c, 0xf4, 0xf7, 0xa0, 0x91, 0xb2, 0x39,
0x4b, 0x33, 0xa6, 0x68, 0xa4, 0xda, 0x75, 0xfc, 0x5a, 0x00, 0x16, 0xba, 0xa2, 0x52, 0x11, 0xf2,
0x2c, 0x2c, 0x2e, 0x91, 0x86, 0x21, 0xe4, 0xd9, 0xb1, 0x45, 0x70, 0x1b, 0x6a, 0x31, 0xbd, 0xc9,
0xc2, 0x38, 0x67, 0xa4, 0xd6, 0x75, 0x7c, 0x37, 0xa8, 0xaa, 0x78, 0x90, 0x33, 0x44, 0x28, 0xf3,
0x31, 0x15, 0xa4, 0xae, 0x2b, 0xeb, 0xb3, 0x5a, 0xa2, 0xec, 0x27, 0xbf, 0x96, 0x04, 0xcc, 0x6a,
0xe9, 0xc0, 0x3b, 0x82, 0xad, 0xe3, 0x94, 0x51, 0xc9, 0xec, 0x58, 0x03, 0xf6, 0x23, 0x67, 0x99,
0x44, 0x1f, 0xaa, 0xf6, 0x7d, 0x7a, 0x39, 0x1a, 0xbd, 0xf5, 0x62, 0xc0, 0x96, 0x57, 0xa4, 0xbd,
0x03, 0xe8, 0xdc, 0x53, 0xc8, 0x66, 0x89, 0xc8, 0xf4, 0x02, 0xe6, 0x3c, 0xb6, 0xbb, 0xa5, 0x8e,
0xde, 0x2b, 0xd8, 0xf8, 0xcc, 0xe4, 0xbd, 0x4a, 0x0f, 0x69, 0x7f, 0x1c, 0xc0, 0x65, 0x9e, 0xd5,
0xfb, 0x6f, 0x4b, 0xf8, 0x0e, 0x2a, 0x99, 0xa4, 0x92, 0xe9, 0xf5, 0x5d, 0xef, 0xed, 0x59, 0xde,
0x43, 0xcd, 0xc3, 0x91, 0xa2, 0x05, 0x86, 0x8d, 0xbb, 0x50, 0xbf, 0xe6, 0x82, 0x4e, 0x42, 0xe5,
0xc7, 0xd5, 0x7e, 0x6a, 0x1a, 0xf8, 0xc6, 0x63, 0xef, 0x08, 0x2a, 0x9a, 0x8c, 0x1b, 0xd0, 0x1a,
0x5d, 0xf6, 0x2f, 0x4f, 0xc2, 0xe1, 0xd9, 0x55, 0xff, 0x74, 0x38, 0x68, 0x3f, 0x41, 0x84, 0x75,
0x03, 0x5d, 0x04, 0xe7, 0x9f, 0xce, 0x83, 0xaf, 0xfd, 0xb6, 0x83, 0x6d, 0x68, 0x1a, 0x6c, 0x74,
0xd2, 0x3f, 0x3d, 0x19, 0xb4, 0x4b, 0x9e, 0x0f, 0x5b, 0x01, 0x13, 0x31, 0x4b, 0x1f, 0x6d, 0xc0,
0x6b, 0xe8, 0xdc, 0x63, 0xda, 0x16, 0x20, 0x94, 0x63, 0x2a, 0xa9, 0xe6, 0x36, 0x03, 0x7d, 0xf6,
0xf6, 0x01, 0x47, 0x8c, 0x4e, 0x1e, 0x15, 0xed, 0xc0, 0xe6, 0x1d, 0x9e, 0x91, 0xec, 0xfd, 0x2a,
0xa9, 0x4f, 0x5a, 0xff, 0x25, 0xe1, 0x17, 0x68, 0xdd, 0x19, 0x25, 0xee, 0x16, 0x5f, 0xdf, 0x8a,
0x15, 0xd9, 0x79, 0xb1, 0x3a, 0x69, 0xad, 0xf6, 0x01, 0x6e, 0xfb, 0x8d, 0x64, 0xc5, 0x08, 0x8c,
0xca, 0xf6, 0x3f, 0x87, 0x83, 0xa7, 0xd0, 0xba, 0xd3, 0x86, 0x85, 0x9d, 0x55, 0x6d, 0x5c, 0xd8,
0x59, 0xd9, 0xb9, 0x37, 0x0e, 0x0e, 0xa0, 0xb1, 0xf4, 0x7e, 0x2c, 0xea, 0x3e, 0xec, 0xdd, 0xce,
0xce, 0xaa, 0x94, 0xd1, 0x19, 0xaf, 0xe9, 0xd4, 0xdb, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xb1,
0x22, 0x88, 0x46, 0xc7, 0x05, 0x00, 0x00,
}

View File

@ -35,32 +35,36 @@ func renderInvoicePDF(i *pb.Invoice, number string, proforma bool) ([]byte, erro
} }
data := struct { data := struct {
InvoiceNumber string InvoiceNumber string
InvoicerBilling []string InvoicerBilling []string
InvoicerVAT string InvoicerVAT string
InvoiceeBilling []string InvoicerCompanyNumber string
InvoiceeVAT string InvoiceeBilling []string
Date time.Time InvoiceeVAT string
DueDate time.Time Date time.Time
IBAN string DueDate time.Time
SWIFT string IBAN string
Proforma bool SWIFT string
ReverseVAT bool Proforma bool
Items []item ReverseVAT bool
TotalNet string USCustomer bool
VATTotal string Items []item
Total string TotalNet string
DeliveryCharge string VATTotal string
Total string
DeliveryCharge string
}{ }{
InvoiceNumber: number, InvoiceNumber: number,
Date: now, Date: now,
DueDate: now.AddDate(0, 0, int(i.DaysDue)), DueDate: now.AddDate(0, 0, int(i.DaysDue)),
IBAN: i.Iban, IBAN: i.Iban,
SWIFT: i.Swift, SWIFT: i.Swift,
InvoicerVAT: i.InvoicerVatId, InvoicerVAT: i.InvoicerVatId,
InvoiceeVAT: i.CustomerVatId, InvoicerCompanyNumber: i.InvoicerCompanyNumber,
Proforma: proforma, InvoiceeVAT: i.CustomerVatId,
ReverseVAT: true, Proforma: proforma,
ReverseVAT: i.ReverseVat,
USCustomer: i.UsCustomer,
InvoicerBilling: make([]string, len(i.InvoicerBilling)), InvoicerBilling: make([]string, len(i.InvoicerBilling)),
InvoiceeBilling: make([]string, len(i.CustomerBilling)), InvoiceeBilling: make([]string, len(i.CustomerBilling)),

View File

@ -104,7 +104,10 @@ div.bgtext div {
<li>{{ $e }}</li> <li>{{ $e }}</li>
{{ end }} {{ end }}
{{ end }} {{ end }}
<li><b>VAT Number:</b> {{ .InvoicerVAT }}</li> {{ if .InvoicerCompanyNumber }}
<li><b>Company Registration Number:</b> {{ .InvoicerCompanyNumber }}</li>
{{ end }}
<li><b>Tax Number:</b> {{ .InvoicerVAT }}</li>
</ul> </ul>
</div> </div>
<div class="metadata"> <div class="metadata">
@ -132,7 +135,12 @@ div.bgtext div {
<li>{{ $e }}</li> <li>{{ $e }}</li>
{{ end }} {{ end }}
{{ end }} {{ end }}
{{ if .USCustomer }}
<li>EIN: {{ .InvoiceeVAT }}</li>
<li><b>(VAT zero rate)</b></li>
{{ else }}
<li>VAT Number: {{ .InvoiceeVAT }}</li> <li>VAT Number: {{ .InvoiceeVAT }}</li>
{{ end }}
{{ if .ReverseVAT }} {{ if .ReverseVAT }}
<li><b>(reverse charge applies)</b></li> <li><b>(reverse charge applies)</b></li>
@ -161,15 +169,11 @@ div.bgtext div {
</tr> </tr>
{{ end }} {{ end }}
<tr> <tr>
<td colspan="5" class="lhead">Net Total</td> <td colspan="5" class="lhead">Subtotal without VAT</td>
<td>{{ .TotalNet }}</td> <td>{{ .TotalNet }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="lhead">Delivery Charge</td> <td colspan="5" class="lhead">VAT Total{{ if .ReverseVAT }} (reverse charge applies){{ end }} {{ if .USCustomer }}(VAT zero rate){{ end }}</td>
<td>{{ .DeliveryCharge }}</td>
</tr>
<tr>
<td colspan="5" class="lhead">VAT Total{{ if .ReverseVAT }} (reverse charge applies){{ end }}</td>
<td>{{ .VATTotal }}</td> <td>{{ .VATTotal }}</td>
</tr> </tr>
<tr> <tr>