/* Options: Date: 2025-07-01 19:31:38 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: CreateIncentive.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.*; import java.util.*; import net.servicestack.client.*; public class dtos { @Route(Path="/superadmin/incentives", Verbs="POST") @ValidateRequest(Validator="IsAuthenticated") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) public static class CreateIncentive implements IReturn { @ApiMember(IsRequired=true) public String Heading = null; @ApiMember() public String StorageUrl = null; @ApiMember() public String Body = null; @ApiMember(IsRequired=true) public String SuccessButtonText = null; @ApiMember(IsRequired=true) public Integer ActionId = null; @ApiMember(IsRequired=true) public IncentiveRecurrenceFrequency Frequency = null; @ApiMember() public Long RecurrenceInterval = null; @ApiMember(IsRequired=true) public Integer InitialDelayInSeconds = null; @ApiMember(IsRequired=true) public Integer MaxDisplayCount = null; @ApiMember(IsRequired=true) public Date ValidFrom = null; @ApiMember(IsRequired=true) public Date ValidTo = null; @ApiMember() public Boolean Active = null; @ApiMember() public String Payload = null; public ArrayList CompanyIds = null; public ArrayList Criteria = null; /** * Number of days to wait after first display attempt before displaying the incentive. Set to 0 to show immediately. */ @ApiMember(Description="Number of days to wait after first display attempt before displaying the incentive. Set to 0 to show immediately.", IsRequired=true) public Integer InitialDeferredDays = null; public String getHeading() { return Heading; } public CreateIncentive setHeading(String value) { this.Heading = value; return this; } public String getStorageUrl() { return StorageUrl; } public CreateIncentive setStorageUrl(String value) { this.StorageUrl = value; return this; } public String getBody() { return Body; } public CreateIncentive setBody(String value) { this.Body = value; return this; } public String getSuccessButtonText() { return SuccessButtonText; } public CreateIncentive setSuccessButtonText(String value) { this.SuccessButtonText = value; return this; } public Integer getActionId() { return ActionId; } public CreateIncentive setActionId(Integer value) { this.ActionId = value; return this; } public IncentiveRecurrenceFrequency getFrequency() { return Frequency; } public CreateIncentive setFrequency(IncentiveRecurrenceFrequency value) { this.Frequency = value; return this; } public Long getRecurrenceInterval() { return RecurrenceInterval; } public CreateIncentive setRecurrenceInterval(Long value) { this.RecurrenceInterval = value; return this; } public Integer getInitialDelayInSeconds() { return InitialDelayInSeconds; } public CreateIncentive setInitialDelayInSeconds(Integer value) { this.InitialDelayInSeconds = value; return this; } public Integer getMaxDisplayCount() { return MaxDisplayCount; } public CreateIncentive setMaxDisplayCount(Integer value) { this.MaxDisplayCount = value; return this; } public Date getValidFrom() { return ValidFrom; } public CreateIncentive setValidFrom(Date value) { this.ValidFrom = value; return this; } public Date getValidTo() { return ValidTo; } public CreateIncentive setValidTo(Date value) { this.ValidTo = value; return this; } public Boolean isActive() { return Active; } public CreateIncentive setActive(Boolean value) { this.Active = value; return this; } public String getPayload() { return Payload; } public CreateIncentive setPayload(String value) { this.Payload = value; return this; } public ArrayList getCompanyIds() { return CompanyIds; } public CreateIncentive setCompanyIds(ArrayList value) { this.CompanyIds = value; return this; } public ArrayList getCriteria() { return Criteria; } public CreateIncentive setCriteria(ArrayList value) { this.Criteria = value; return this; } public Integer getInitialDeferredDays() { return InitialDeferredDays; } public CreateIncentive setInitialDeferredDays(Integer value) { this.InitialDeferredDays = value; return this; } private static Object responseType = AdminIncentiveQueryResponse.class; public Object getResponseType() { return responseType; } } public static class AdminIncentiveQueryResponse extends CompanyIncentiveResponse { public IncentiveRecurrenceFrequency Frequency = null; public Long RecurrenceInterval = null; public Date CreatedDate = null; public Date ModifiedDate = null; public ArrayList CompanyIds = null; public ArrayList Criteria = null; public Boolean ApplyToAllCompanies = null; public IncentiveActionResponse Action = null; public IncentiveRecurrenceFrequency getFrequency() { return Frequency; } public AdminIncentiveQueryResponse setFrequency(IncentiveRecurrenceFrequency value) { this.Frequency = value; return this; } public Long getRecurrenceInterval() { return RecurrenceInterval; } public AdminIncentiveQueryResponse setRecurrenceInterval(Long value) { this.RecurrenceInterval = value; return this; } public Date getCreatedDate() { return CreatedDate; } public AdminIncentiveQueryResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public AdminIncentiveQueryResponse setModifiedDate(Date value) { this.ModifiedDate = value; return this; } public ArrayList getCompanyIds() { return CompanyIds; } public AdminIncentiveQueryResponse setCompanyIds(ArrayList value) { this.CompanyIds = value; return this; } public ArrayList getCriteria() { return Criteria; } public AdminIncentiveQueryResponse setCriteria(ArrayList value) { this.Criteria = value; return this; } public Boolean isApplyToAllCompanies() { return ApplyToAllCompanies; } public AdminIncentiveQueryResponse setApplyToAllCompanies(Boolean value) { this.ApplyToAllCompanies = value; return this; } public IncentiveActionResponse getAction() { return Action; } public AdminIncentiveQueryResponse setAction(IncentiveActionResponse value) { this.Action = value; return this; } } public static enum IncentiveRecurrenceFrequency { OneTime(1), Weekly(2), Monthly(3); private final int value; IncentiveRecurrenceFrequency(final int intValue) { value = intValue; } public int getValue() { return value; } } public static class IncentiveCriteriaDto { public CriteriaType CriteriaType = null; public String Value = null; public Boolean InvertCondition = null; public CriteriaType getCriteriaType() { return CriteriaType; } public IncentiveCriteriaDto setCriteriaType(CriteriaType value) { this.CriteriaType = value; return this; } public String getValue() { return Value; } public IncentiveCriteriaDto setValue(String value) { this.Value = value; return this; } public Boolean isInvertCondition() { return InvertCondition; } public IncentiveCriteriaDto setInvertCondition(Boolean value) { this.InvertCondition = value; return this; } } public static class CompanyIncentiveResponse { public Integer Id = null; public String Heading = null; public String StorageUrl = null; public String SuccessButtonText = null; public Integer ActionId = null; public Integer InitialDelayInSeconds = null; public Integer MaxDisplayCount = null; public Date ValidFrom = null; public Date ValidTo = null; public IncentiveActionResponse Action = null; public String Payload = null; @ApiMember() public String Body = null; @ApiMember(IsRequired=true) public IncentiveRecurrenceFrequency Frequency = null; @ApiMember(IsRequired=true) public Integer InitialDeferredDays = null; @ApiMember() public Long RecurrenceInterval = null; @ApiMember() public Boolean Active = null; public ArrayList CompanyIds = null; public ArrayList Criteria = null; public Integer getId() { return Id; } public CompanyIncentiveResponse setId(Integer value) { this.Id = value; return this; } public String getHeading() { return Heading; } public CompanyIncentiveResponse setHeading(String value) { this.Heading = value; return this; } public String getStorageUrl() { return StorageUrl; } public CompanyIncentiveResponse setStorageUrl(String value) { this.StorageUrl = value; return this; } public String getSuccessButtonText() { return SuccessButtonText; } public CompanyIncentiveResponse setSuccessButtonText(String value) { this.SuccessButtonText = value; return this; } public Integer getActionId() { return ActionId; } public CompanyIncentiveResponse setActionId(Integer value) { this.ActionId = value; return this; } public Integer getInitialDelayInSeconds() { return InitialDelayInSeconds; } public CompanyIncentiveResponse setInitialDelayInSeconds(Integer value) { this.InitialDelayInSeconds = value; return this; } public Integer getMaxDisplayCount() { return MaxDisplayCount; } public CompanyIncentiveResponse setMaxDisplayCount(Integer value) { this.MaxDisplayCount = value; return this; } public Date getValidFrom() { return ValidFrom; } public CompanyIncentiveResponse setValidFrom(Date value) { this.ValidFrom = value; return this; } public Date getValidTo() { return ValidTo; } public CompanyIncentiveResponse setValidTo(Date value) { this.ValidTo = value; return this; } public IncentiveActionResponse getAction() { return Action; } public CompanyIncentiveResponse setAction(IncentiveActionResponse value) { this.Action = value; return this; } public String getPayload() { return Payload; } public CompanyIncentiveResponse setPayload(String value) { this.Payload = value; return this; } public String getBody() { return Body; } public CompanyIncentiveResponse setBody(String value) { this.Body = value; return this; } public IncentiveRecurrenceFrequency getFrequency() { return Frequency; } public CompanyIncentiveResponse setFrequency(IncentiveRecurrenceFrequency value) { this.Frequency = value; return this; } public Integer getInitialDeferredDays() { return InitialDeferredDays; } public CompanyIncentiveResponse setInitialDeferredDays(Integer value) { this.InitialDeferredDays = value; return this; } public Long getRecurrenceInterval() { return RecurrenceInterval; } public CompanyIncentiveResponse setRecurrenceInterval(Long value) { this.RecurrenceInterval = value; return this; } public Boolean isActive() { return Active; } public CompanyIncentiveResponse setActive(Boolean value) { this.Active = value; return this; } public ArrayList getCompanyIds() { return CompanyIds; } public CompanyIncentiveResponse setCompanyIds(ArrayList value) { this.CompanyIds = value; return this; } public ArrayList getCriteria() { return Criteria; } public CompanyIncentiveResponse setCriteria(ArrayList value) { this.Criteria = value; return this; } } public static class IncentiveCriteria extends BaseModel { public Integer Id = null; public Integer IncentiveId = null; public CriteriaType CriteriaType = null; public String Value = null; public Boolean InvertCondition = null; public Date CreatedDate = null; public Integer getId() { return Id; } public IncentiveCriteria setId(Integer value) { this.Id = value; return this; } public Integer getIncentiveId() { return IncentiveId; } public IncentiveCriteria setIncentiveId(Integer value) { this.IncentiveId = value; return this; } public CriteriaType getCriteriaType() { return CriteriaType; } public IncentiveCriteria setCriteriaType(CriteriaType value) { this.CriteriaType = value; return this; } public String getValue() { return Value; } public IncentiveCriteria setValue(String value) { this.Value = value; return this; } public Boolean isInvertCondition() { return InvertCondition; } public IncentiveCriteria setInvertCondition(Boolean value) { this.InvertCondition = value; return this; } public Date getCreatedDate() { return CreatedDate; } public IncentiveCriteria setCreatedDate(Date value) { this.CreatedDate = value; return this; } } public static class BaseModel { } public static enum CriteriaType { LicenseAvailability, SmsActivation, EAccountingActivation, CodeLockActivation, SocialActivation, OnlinePaymentActivation, FollowUpMessageActivation, RatingActivation; } public static class IncentiveActionResponse { public Integer Id = null; public String Description = null; public IncentiveActionType ActionType = null; public String Page = null; public String Segment = null; public String Element = null; public Integer LicenseTypeId = null; public LicenseTypeQueryResponse SuggestedLicenseToUpgrade = null; public Integer getId() { return Id; } public IncentiveActionResponse setId(Integer value) { this.Id = value; return this; } public String getDescription() { return Description; } public IncentiveActionResponse setDescription(String value) { this.Description = value; return this; } public IncentiveActionType getActionType() { return ActionType; } public IncentiveActionResponse setActionType(IncentiveActionType value) { this.ActionType = value; return this; } public String getPage() { return Page; } public IncentiveActionResponse setPage(String value) { this.Page = value; return this; } public String getSegment() { return Segment; } public IncentiveActionResponse setSegment(String value) { this.Segment = value; return this; } public String getElement() { return Element; } public IncentiveActionResponse setElement(String value) { this.Element = value; return this; } public Integer getLicenseTypeId() { return LicenseTypeId; } public IncentiveActionResponse setLicenseTypeId(Integer value) { this.LicenseTypeId = value; return this; } public LicenseTypeQueryResponse getSuggestedLicenseToUpgrade() { return SuggestedLicenseToUpgrade; } public IncentiveActionResponse setSuggestedLicenseToUpgrade(LicenseTypeQueryResponse value) { this.SuggestedLicenseToUpgrade = value; return this; } } }