105 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Go
		
	
	
		
		
			
		
	
	
			105 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Go
		
	
	
|  | package app | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"database/sql" | ||
|  | 	"time" | ||
|  | 
 | ||
|  | 	"code.tnxs.net/taxnexus/lib/api/ops/ops_models" | ||
|  | 	"github.com/google/uuid" | ||
|  | ) | ||
|  | 
 | ||
|  | // UnMarshalCashReceipt decodes swagger to a first class object
 | ||
|  | func UnMarshalCashReceipt(s *ops_models.CashReceipt) *CashReceipt { | ||
|  | 	if s.ID == "" { | ||
|  | 		s.ID = uuid.New().String() | ||
|  | 	} | ||
|  | 	createdDate, e0 := time.Parse(dateTimeFormat, s.CreatedDate) | ||
|  | 	lastModfiedDate, e1 := time.Parse(dateTimeFormat, s.LastModifiedDate) | ||
|  | 	cashReceiptDate, e2 := time.Parse(dateTimeFormat, s.CashReceiptDate) | ||
|  | 	return &CashReceipt{ | ||
|  | 		ID:                 s.ID, | ||
|  | 		AccountID:          s.AccountID, | ||
|  | 		Amount:             s.Amount, | ||
|  | 		AppliedAmount:      s.AppliedAmount, | ||
|  | 		BillingContactID:   s.BillingContactID, | ||
|  | 		CashReceiptNumber:  s.CashReceiptNumber, | ||
|  | 		CreatedByID:        s.CreatedByID, | ||
|  | 		Description:        s.Description, | ||
|  | 		Gateway:            s.Gateway, | ||
|  | 		GatewayKey:         s.GatewayKey, | ||
|  | 		GatewayMessage:     s.GatewayMessage, | ||
|  | 		GatewayTransaction: s.GatewayTransaction, | ||
|  | 		IsValid:            s.IsValid, | ||
|  | 		LastModifiedByID:   s.LastModifiedByID, | ||
|  | 		PartnerAccountID:   s.PartnerAccountID, | ||
|  | 		PaymentMethodID:    s.PaymentMethodID, | ||
|  | 		PeriodID:           s.PeriodID, | ||
|  | 		Posted:             s.Posted, | ||
|  | 		RecordType:         s.RecordType, | ||
|  | 		Ref:                s.Ref, | ||
|  | 		Rejected:           s.Rejected, | ||
|  | 		Source:             s.Source, | ||
|  | 		Status:             s.Status, | ||
|  | 		TenantID:           s.TenantID, | ||
|  | 		TemplateID:         s.TemplateID, | ||
|  | 		Type:               s.Type, | ||
|  | 		UnappliedAmount:    s.UnappliedAmount, | ||
|  | 		ValidPayment:       s.ValidPayment, | ||
|  | 		XeroID:             s.XeroID, | ||
|  | 		BillingRunID:       s.BillingRunID, | ||
|  | 		InvoiceID:          s.InvoiceID, | ||
|  | 		CreatedDate: sql.NullTime{ | ||
|  | 			Time:  createdDate, | ||
|  | 			Valid: e0 == nil, | ||
|  | 		}, | ||
|  | 		LastModifiedDate: sql.NullTime{ | ||
|  | 			Time:  lastModfiedDate, | ||
|  | 			Valid: e1 == nil, | ||
|  | 		}, | ||
|  | 		CashReceiptDate: sql.NullTime{ | ||
|  | 			Time:  cashReceiptDate, | ||
|  | 			Valid: e2 == nil, | ||
|  | 		}, | ||
|  | 	} | ||
|  | } | ||
|  | 
 | ||
|  | // MarshalToSwagger encodes a first class object to swagger
 | ||
|  | func (obj *CashReceipt) MarshalToSwagger() *ops_models.CashReceipt { | ||
|  | 	return &ops_models.CashReceipt{ | ||
|  | 		ID:                 obj.ID, | ||
|  | 		AccountID:          obj.AccountID, | ||
|  | 		Amount:             obj.Amount, | ||
|  | 		AppliedAmount:      obj.AppliedAmount, | ||
|  | 		BillingContactID:   obj.BillingContactID, | ||
|  | 		BillingRunID:       obj.BillingRunID, | ||
|  | 		CashReceiptDate:    obj.CashReceiptDate.Time.Format(dateTimeFormat), | ||
|  | 		CashReceiptNumber:  obj.CashReceiptNumber, | ||
|  | 		CreatedByID:        obj.CreatedByID, | ||
|  | 		CreatedDate:        obj.CreatedDate.Time.Format(dateTimeFormat), | ||
|  | 		Description:        obj.Description, | ||
|  | 		Gateway:            obj.Gateway, | ||
|  | 		GatewayKey:         obj.GatewayKey, | ||
|  | 		GatewayMessage:     obj.GatewayMessage, | ||
|  | 		GatewayTransaction: obj.GatewayTransaction, | ||
|  | 		InvoiceID:          obj.InvoiceID, | ||
|  | 		IsValid:            obj.IsValid, | ||
|  | 		LastModifiedByID:   obj.LastModifiedByID, | ||
|  | 		LastModifiedDate:   obj.LastModifiedDate.Time.Format(dateTimeFormat), | ||
|  | 		PartnerAccountID:   obj.PartnerAccountID, | ||
|  | 		PaymentMethodID:    obj.PaymentMethodID, | ||
|  | 		PeriodID:           obj.PeriodID, | ||
|  | 		Posted:             obj.Posted, | ||
|  | 		RecordType:         obj.RecordType, | ||
|  | 		Ref:                obj.Ref, | ||
|  | 		Rejected:           obj.Rejected, | ||
|  | 		Source:             obj.Source, | ||
|  | 		Status:             obj.Status, | ||
|  | 		TemplateID:         obj.TemplateID, | ||
|  | 		TenantID:           obj.TenantID, | ||
|  | 		Type:               obj.Type, | ||
|  | 		UnappliedAmount:    obj.UnappliedAmount, | ||
|  | 		ValidPayment:       obj.ValidPayment, | ||
|  | 		XeroID:             obj.XeroID, | ||
|  | 	} | ||
|  | } |