Requires the role: | manager |
PUT | /packages/{id}/forecast |
---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Infrastructure.Api.Interfaces.ServiceOperations.SalaryPackages
Imports Infrastructure.Api.Interfaces.ServiceOperations
Imports Application.Interfaces.Resources
Namespace Global
Namespace Application.Interfaces.Resources
Public Partial Class Adjustment
Implements IIdentifiableResource
Public Overridable Property BudgetCategory As String
Public Overridable Property Amount As Decimal
Public Overridable Property Gst As Decimal
Public Overridable Property Description As String
Public Overridable Property Received As Date
Public Overridable Property Id As String
End Class
Public Partial Class BankAccount
Public Overridable Property BsbNumber As String
Public Overridable Property AccountNumber As String
End Class
Public Partial Class BudgetBalances
Public Overridable Property LeaseAmount As Decimal
Public Overridable Property AdministrationFee As Decimal
Public Overridable Property Fuel As Decimal
Public Overridable Property Servicing As Decimal
Public Overridable Property Tyres As Decimal
Public Overridable Property Insurance As Decimal
Public Overridable Property CarWash As Decimal
Public Overridable Property Registration As Decimal
Public Overridable Property RoadSideAssistance As Decimal
Public Overridable Property AnythingExtra As Decimal
End Class
Public Partial Class BudgetBreakdown
Public Overridable Property LeaseAmount As Nullable(Of Decimal)
Public Overridable Property AdministrationFee As Nullable(Of Decimal)
Public Overridable Property Fuel As Nullable(Of Decimal)
Public Overridable Property Servicing As Nullable(Of Decimal)
Public Overridable Property Tyres As Nullable(Of Decimal)
Public Overridable Property Insurance As Nullable(Of Decimal)
Public Overridable Property CarWash As Nullable(Of Decimal)
Public Overridable Property Registration As Nullable(Of Decimal)
Public Overridable Property RoadSideAssistance As Nullable(Of Decimal)
Public Overridable Property AnythingExtra As Nullable(Of Decimal)
End Class
Public Partial Class Employment
Public Overridable Property PayrollCycle As String
Public Overridable Property FirstPayDate As Date
Public Overridable Property EmployerId As String
Public Overridable Property EmployerName As String
End Class
Public Partial Class Expense
Public Overridable Property BudgetCategory As String
Public Overridable Property Amount As Decimal
Public Overridable Property Gst As Decimal
End Class
Public Partial Class ForecastedOutgoingPayment
Public Overridable Property Scheduled As Date
Public Overridable Property Amount As Decimal
Public Overridable Property BudgetCategory As String
Public Overridable Property Matched As Expense
End Class
Public Partial Class ForecastedSalarySacrifice
Public Overridable Property PaymentDate As Date
Public Overridable Property Amount As Decimal
Public Overridable Property Matched As SalarySacrifice
End Class
Public Partial Class LeaseDetails
Public Overridable Property Term As Nullable(Of Integer)
Public Overridable Property StartDate As Nullable(Of Date)
Public Overridable Property AmountFinanced As Nullable(Of Decimal)
Public Overridable Property PaymentAmount As Nullable(Of Decimal)
Public Overridable Property FinanceProvider As String
Public Overridable Property ResidualValue As Nullable(Of Decimal)
Public Overridable Property YearlyKmsTravelled As Nullable(Of Integer)
Public Overridable Property FringeBenefitTaxValue As Nullable(Of Decimal)
Public Overridable Property FringeBenefitTaxMethod As String
Public Overridable Property FringeBenefitTaxBusinessUse As Integer
Public Overridable Property FringeBenefitTaxStartDate As Date
Public Overridable Property PreTaxDeduction As Nullable(Of Decimal)
Public Overridable Property PostTaxDeduction As Nullable(Of Decimal)
Public Overridable Property GstOnPostTaxDeduction As Nullable(Of Decimal)
Public Overridable Property LuxuryVehicleCharge As Nullable(Of Decimal)
Public Overridable Property OnRoadCost As Decimal
Public Overridable Property RegistrationDueDate As Date
Public Overridable Property InsuranceDueDate As Date
Public Overridable Property LeaseProviderBankAccount As BankAccount
End Class
Public Partial Class SalaryPackage
Implements IIdentifiableResource
Public Sub New()
ForecastedSalarySacrifices = New List(Of ForecastedSalarySacrifice)
ForecastedOutgoingPayments = New List(Of ForecastedOutgoingPayment)
Adjustments = New List(Of Adjustment)
Transactions = New List(Of Transaction)
End Sub
Public Overridable Property CustomerId As String
Public Overridable Property CustomerFirstName As String
Public Overridable Property CustomerLastName As String
Public Overridable Property Status As String
Public Overridable Property Notes As String
Public Overridable Property BudgetBreakdown As BudgetBreakdown
Public Overridable Property Employment As Employment
Public Overridable Property Vehicle As Vehicle
Public Overridable Property LeaseDetails As LeaseDetails
Public Overridable Property BudgetBalances As BudgetBalances
Public Overridable Property CurrentBalance As Decimal
Public Overridable Property ForecastedSalarySacrifices As List(Of ForecastedSalarySacrifice)
Public Overridable Property ForecastedOutgoingPayments As List(Of ForecastedOutgoingPayment)
Public Overridable Property Adjustments As List(Of Adjustment)
Public Overridable Property Transactions As List(Of Transaction)
Public Overridable Property Id As String
End Class
Public Partial Class SalarySacrifice
Public Overridable Property PaymentDate As Date
Public Overridable Property SalarySacrificeBreakdown As SalarySacrificeBreakdown
Public Overridable Property PreTaxDeduction As Decimal
Public Overridable Property PostTaxDeduction As Decimal
Public Overridable Property ContributionId As String
End Class
Public Partial Class SalarySacrificeBreakdown
Public Overridable Property LeaseAmount As Nullable(Of Decimal)
Public Overridable Property AdministrationFee As Nullable(Of Decimal)
Public Overridable Property Fuel As Nullable(Of Decimal)
Public Overridable Property Servicing As Nullable(Of Decimal)
Public Overridable Property Tyres As Nullable(Of Decimal)
Public Overridable Property Insurance As Nullable(Of Decimal)
Public Overridable Property CarWash As Nullable(Of Decimal)
Public Overridable Property Registration As Nullable(Of Decimal)
Public Overridable Property RoadSideAssistance As Nullable(Of Decimal)
Public Overridable Property AnythingExtra As Nullable(Of Decimal)
End Class
Public Partial Class Transaction
Public Overridable Property Received As Date
Public Overridable Property BudgetCategory As String
Public Overridable Property Amount As Decimal
Public Overridable Property Gst As Decimal
Public Overridable Property Description As String
Public Overridable Property Type As String
End Class
Public Partial Class Vehicle
Public Overridable Property Make As String
Public Overridable Property Model As String
Public Overridable Property Colour As String
Public Overridable Property BodyShape As String
Public Overridable Property LicensePlate As String
Public Overridable Property Transmission As String
Public Overridable Property ManufactureYear As Integer
End Class
End Namespace
Namespace Infrastructure.Api.Interfaces.ServiceOperations
Public Partial Class PutOperationTenanted(Of TResponse)
Inherits PutOperationUnTenanted(Of TResponse)
Implements ITenantedRequest
Public Overridable Property OrganisationId As String
End Class
Public Partial Class PutOperationUnTenanted(Of TResponse)
Implements IPut
End Class
End Namespace
Namespace Infrastructure.Api.Interfaces.ServiceOperations.SalaryPackages
Public Partial Class ForecastRequest
Inherits PutOperationTenanted(Of ForecastResponse)
Public Overridable Property Id As String
End Class
Public Partial Class ForecastResponse
Public Overridable Property ResponseStatus As ResponseStatus
Public Overridable Property SalaryPackage As SalaryPackage
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /packages/{id}/forecast HTTP/1.1
Host: staging-api.billiecart.com.au
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"id":"String","organisationId":"String"}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"salaryPackage":{"customerId":"String","customerFirstName":"String","customerLastName":"String","status":"String","notes":"String","budgetBreakdown":{"leaseAmount":0,"administrationFee":0,"fuel":0,"servicing":0,"tyres":0,"insurance":0,"carWash":0,"registration":0,"roadSideAssistance":0,"anythingExtra":0},"employment":{"payrollCycle":"String","employerId":"String","employerName":"String"},"vehicle":{"make":"String","model":"String","colour":"String","bodyShape":"String","licensePlate":"String","transmission":"String","manufactureYear":0},"leaseDetails":{"term":0,"startDate":null,"amountFinanced":0,"paymentAmount":0,"financeProvider":"String","residualValue":0,"yearlyKmsTravelled":0,"fringeBenefitTaxValue":0,"fringeBenefitTaxMethod":"String","fringeBenefitTaxBusinessUse":0,"preTaxDeduction":0,"postTaxDeduction":0,"gstOnPostTaxDeduction":0,"luxuryVehicleCharge":0,"onRoadCost":0,"leaseProviderBankAccount":{"bsbNumber":"String","accountNumber":"String"}},"budgetBalances":{"leaseAmount":0,"administrationFee":0,"fuel":0,"servicing":0,"tyres":0,"insurance":0,"carWash":0,"registration":0,"roadSideAssistance":0,"anythingExtra":0},"currentBalance":0,"forecastedSalarySacrifices":[{"amount":0,"matched":{"salarySacrificeBreakdown":{"leaseAmount":0,"administrationFee":0,"fuel":0,"servicing":0,"tyres":0,"insurance":0,"carWash":0,"registration":0,"roadSideAssistance":0,"anythingExtra":0},"preTaxDeduction":0,"postTaxDeduction":0,"contributionId":"String"}}],"forecastedOutgoingPayments":[{"amount":0,"budgetCategory":"String","matched":{"budgetCategory":"String","amount":0,"gst":0}}],"adjustments":[{"budgetCategory":"String","amount":0,"gst":0,"description":"String","id":"String"}],"transactions":[{"budgetCategory":"String","amount":0,"gst":0,"description":"String","type":"String"}],"id":"String"}}