Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
POST | /rebatecodes/transactions | Create transaction for the rebate code | Create transaction for the rebate code |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
@ValidateRequest(Validator="IsAuthenticated")
public static class CreateRebateCodeTransaction
{
/**
*
*/
@ApiMember(Description="", IsRequired=true)
public UUID CompanyId = null;
/**
* Rebate code id to which you wish to add transaction
*/
@ApiMember(Description="Rebate code id to which you wish to add transaction", IsRequired=true)
public Integer RebateCodeId = null;
@ApiMember(IsRequired=true)
public Double Amount = null;
@ApiMember(IsRequired=true)
public Integer Usage = null;
@ApiMember()
public Integer BookingId = null;
/**
* If you want to Increase = 0 or Decrease = 1 the value
*/
@ApiMember(Description="If you want to Increase = 0 or Decrease = 1 the value", IsRequired=true)
public AmountChangeType ChangeType = null;
public UUID getCompanyId() { return CompanyId; }
public CreateRebateCodeTransaction setCompanyId(UUID value) { this.CompanyId = value; return this; }
public Integer getRebateCodeId() { return RebateCodeId; }
public CreateRebateCodeTransaction setRebateCodeId(Integer value) { this.RebateCodeId = value; return this; }
public Double getAmount() { return Amount; }
public CreateRebateCodeTransaction setAmount(Double value) { this.Amount = value; return this; }
public Integer getUsage() { return Usage; }
public CreateRebateCodeTransaction setUsage(Integer value) { this.Usage = value; return this; }
public Integer getBookingId() { return BookingId; }
public CreateRebateCodeTransaction setBookingId(Integer value) { this.BookingId = value; return this; }
public AmountChangeType getChangeType() { return ChangeType; }
public CreateRebateCodeTransaction setChangeType(AmountChangeType value) { this.ChangeType = value; return this; }
}
public static enum AmountChangeType
{
Increase,
Decrease;
}
public static class RebateCodeTransactionResponse
{
public ResponseStatus ResponseStatus = null;
public RebateCodeTransactionQueryResponse RebateCodeTransactionItem = null;
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public RebateCodeTransactionResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
public RebateCodeTransactionQueryResponse getRebateCodeTransactionItem() { return RebateCodeTransactionItem; }
public RebateCodeTransactionResponse setRebateCodeTransactionItem(RebateCodeTransactionQueryResponse value) { this.RebateCodeTransactionItem = value; return this; }
}
public static class RebateCodeTransactionQueryResponse
{
public Integer Id = null;
public UUID CompanyId = null;
public String Note = null;
public Integer RebateCodeId = null;
public String RebateCodeSign = null;
public Integer RebateCodeTypeId = null;
public String RebateCodeTypeName = null;
public Double Amount = null;
public Integer BookingId = null;
public Date UpdatedDate = null;
public Date CreatedDate = null;
public RebateCodeServiceResponse Service = null;
public RebateCodeCustomerResponse Customer = null;
public String PriceSign = null;
public Integer getId() { return Id; }
public RebateCodeTransactionQueryResponse setId(Integer value) { this.Id = value; return this; }
public UUID getCompanyId() { return CompanyId; }
public RebateCodeTransactionQueryResponse setCompanyId(UUID value) { this.CompanyId = value; return this; }
public String getNote() { return Note; }
public RebateCodeTransactionQueryResponse setNote(String value) { this.Note = value; return this; }
public Integer getRebateCodeId() { return RebateCodeId; }
public RebateCodeTransactionQueryResponse setRebateCodeId(Integer value) { this.RebateCodeId = value; return this; }
public String getRebateCodeSign() { return RebateCodeSign; }
public RebateCodeTransactionQueryResponse setRebateCodeSign(String value) { this.RebateCodeSign = value; return this; }
public Integer getRebateCodeTypeId() { return RebateCodeTypeId; }
public RebateCodeTransactionQueryResponse setRebateCodeTypeId(Integer value) { this.RebateCodeTypeId = value; return this; }
public String getRebateCodeTypeName() { return RebateCodeTypeName; }
public RebateCodeTransactionQueryResponse setRebateCodeTypeName(String value) { this.RebateCodeTypeName = value; return this; }
public Double getAmount() { return Amount; }
public RebateCodeTransactionQueryResponse setAmount(Double value) { this.Amount = value; return this; }
public Integer getBookingId() { return BookingId; }
public RebateCodeTransactionQueryResponse setBookingId(Integer value) { this.BookingId = value; return this; }
public Date getUpdatedDate() { return UpdatedDate; }
public RebateCodeTransactionQueryResponse setUpdatedDate(Date value) { this.UpdatedDate = value; return this; }
public Date getCreatedDate() { return CreatedDate; }
public RebateCodeTransactionQueryResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; }
public RebateCodeServiceResponse getService() { return Service; }
public RebateCodeTransactionQueryResponse setService(RebateCodeServiceResponse value) { this.Service = value; return this; }
public RebateCodeCustomerResponse getCustomer() { return Customer; }
public RebateCodeTransactionQueryResponse setCustomer(RebateCodeCustomerResponse value) { this.Customer = value; return this; }
public String getPriceSign() { return PriceSign; }
public RebateCodeTransactionQueryResponse setPriceSign(String value) { this.PriceSign = value; return this; }
}
public static class RebateCodeServiceResponse
{
public Integer Id = null;
public String Name = null;
public String Description = null;
public Boolean Active = null;
public Integer getId() { return Id; }
public RebateCodeServiceResponse setId(Integer value) { this.Id = value; return this; }
public String getName() { return Name; }
public RebateCodeServiceResponse setName(String value) { this.Name = value; return this; }
public String getDescription() { return Description; }
public RebateCodeServiceResponse setDescription(String value) { this.Description = value; return this; }
public Boolean isActive() { return Active; }
public RebateCodeServiceResponse setActive(Boolean value) { this.Active = value; return this; }
}
public static class RebateCodeCustomerResponse
{
public UUID Id = null;
public String Firstname = null;
public String Lastname = null;
public String Email = null;
public String Phone = null;
public String ImageUrl = null;
public UUID getId() { return Id; }
public RebateCodeCustomerResponse setId(UUID value) { this.Id = value; return this; }
public String getFirstname() { return Firstname; }
public RebateCodeCustomerResponse setFirstname(String value) { this.Firstname = value; return this; }
public String getLastname() { return Lastname; }
public RebateCodeCustomerResponse setLastname(String value) { this.Lastname = value; return this; }
public String getEmail() { return Email; }
public RebateCodeCustomerResponse setEmail(String value) { this.Email = value; return this; }
public String getPhone() { return Phone; }
public RebateCodeCustomerResponse setPhone(String value) { this.Phone = value; return this; }
public String getImageUrl() { return ImageUrl; }
public RebateCodeCustomerResponse setImageUrl(String value) { this.ImageUrl = value; return this; }
}
}
Java CreateRebateCodeTransaction DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /rebatecodes/transactions HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
CompanyId: 00000000-0000-0000-0000-000000000000,
RebateCodeId: 0,
Amount: 0,
Usage: 0,
BookingId: 0,
ChangeType: Increase
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } }, RebateCodeTransactionItem: { Id: 0, Note: String, RebateCodeId: 0, RebateCodeSign: String, RebateCodeTypeId: 0, RebateCodeTypeName: String, Amount: 0, BookingId: 0, Service: { Id: 0, Name: String, Description: String, Active: False }, Customer: { Firstname: String, Lastname: String, Email: String, Phone: String, ImageUrl: String }, PriceSign: String } }