/* Options: Date: 2024-07-03 13:13:53 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: MessageTemplatesQuery.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.*; import java.util.*; import net.servicestack.client.*; import com.google.gson.annotations.*; import com.google.gson.reflect.*; public class dtos { @Route(Path="/messages/templates", Verbs="GET") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") public static class MessageTemplatesQuery extends QueryDb implements IReturn>, ICompany { /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") public UUID CompanyId = null; /** * The message template id. */ @ApiMember(Description="The message template id.") public Integer Id = null; /** * The message type id. See GET /messages/templates/types */ @ApiMember(Description="The message type id. See GET /messages/templates/types ") public Integer TypeId = null; /** * The message send method id.1 = Email and 2 = SMS. See GET /messages/templates/types */ @ApiMember(Description="The message send method id.1 = Email and 2 = SMS. See GET /messages/templates/types ") public Integer MessageTypeSendMethodId = null; /** * If you only want to retrieve active message templates (not inactive). */ @ApiMember(Description="If you only want to retrieve active message templates (not inactive).") public Boolean Default = null; /** * If you want to include the message type information */ @ApiMember(DataType="boolean", Description="If you want to include the message type information", ParameterType="query") public Boolean IncludeMessageTypeInformation = null; /** * If you want to include the services that are conencted to this template */ @ApiMember(DataType="boolean", Description="If you want to include the services that are conencted to this template", ParameterType="query") public Boolean IncludeConnectedServices = null; public UUID getCompanyId() { return CompanyId; } public MessageTemplatesQuery setCompanyId(UUID value) { this.CompanyId = value; return this; } public Integer getId() { return Id; } public MessageTemplatesQuery setId(Integer value) { this.Id = value; return this; } public Integer getTypeId() { return TypeId; } public MessageTemplatesQuery setTypeId(Integer value) { this.TypeId = value; return this; } public Integer getMessageTypeSendMethodId() { return MessageTypeSendMethodId; } public MessageTemplatesQuery setMessageTypeSendMethodId(Integer value) { this.MessageTypeSendMethodId = value; return this; } public Boolean isDefault() { return Default; } public MessageTemplatesQuery setDefault(Boolean value) { this.Default = value; return this; } public Boolean isIncludeMessageTypeInformation() { return IncludeMessageTypeInformation; } public MessageTemplatesQuery setIncludeMessageTypeInformation(Boolean value) { this.IncludeMessageTypeInformation = value; return this; } public Boolean isIncludeConnectedServices() { return IncludeConnectedServices; } public MessageTemplatesQuery setIncludeConnectedServices(Boolean value) { this.IncludeConnectedServices = value; return this; } private static Object responseType = new TypeToken>(){}.getType(); public Object getResponseType() { return responseType; } } @DataContract public static class QueryResponse { @DataMember(Order=1) public Integer Offset = null; @DataMember(Order=2) public Integer Total = null; @DataMember(Order=3) public ArrayList Results = null; @DataMember(Order=4) public HashMap Meta = null; @DataMember(Order=5) public ResponseStatus ResponseStatus = null; public Integer getOffset() { return Offset; } public QueryResponse setOffset(Integer value) { this.Offset = value; return this; } public Integer getTotal() { return Total; } public QueryResponse setTotal(Integer value) { this.Total = value; return this; } public ArrayList getResults() { return Results; } public QueryResponse setResults(ArrayList value) { this.Results = value; return this; } public HashMap getMeta() { return Meta; } public QueryResponse setMeta(HashMap value) { this.Meta = value; return this; } public ResponseStatus getResponseStatus() { return ResponseStatus; } public QueryResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; } } public static class QueryDb extends QueryBase { } public static interface ICompany { public UUID CompanyId = null; } public static class MessageType extends BaseModel { @Required() public String Name = null; @Required() public String Description = null; @Required() public Integer MaxCharacters = null; @Required() public String DefaultText = null; @Required() public Integer SendMethodId = null; public Date ModifiedDate = null; public Integer Id = null; public String getName() { return Name; } public MessageType setName(String value) { this.Name = value; return this; } public String getDescription() { return Description; } public MessageType setDescription(String value) { this.Description = value; return this; } public Integer getMaxCharacters() { return MaxCharacters; } public MessageType setMaxCharacters(Integer value) { this.MaxCharacters = value; return this; } public String getDefaultText() { return DefaultText; } public MessageType setDefaultText(String value) { this.DefaultText = value; return this; } public Integer getSendMethodId() { return SendMethodId; } public MessageType setSendMethodId(Integer value) { this.SendMethodId = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public MessageType setModifiedDate(Date value) { this.ModifiedDate = value; return this; } public Integer getId() { return Id; } public MessageType setId(Integer value) { this.Id = value; return this; } } public static class MessageTypeQueryResponse { /** * The message type id */ @ApiMember(Description="The message type id") public Integer Id = null; /** * The message type name. */ @ApiMember(Description="The message type name.") public String Name = null; /** * The message type description. */ @ApiMember(Description="The message type description.") public String Description = null; /** * The maximum number of charachters that can be entered into message body using this type. */ @ApiMember(Description="The maximum number of charachters that can be entered into message body using this type.") public Integer MaxCharacters = null; /** * The default text that is always included when sending messages of this type. */ @ApiMember(Description="The default text that is always included when sending messages of this type.") public String DefaultText = null; /** * The send method for this type. 1 = Email, 2 = SMS. */ @ApiMember(Description="The send method for this type. 1 = Email, 2 = SMS.") public Integer SendMethodId = null; public Integer getId() { return Id; } public MessageTypeQueryResponse setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public MessageTypeQueryResponse setName(String value) { this.Name = value; return this; } public String getDescription() { return Description; } public MessageTypeQueryResponse setDescription(String value) { this.Description = value; return this; } public Integer getMaxCharacters() { return MaxCharacters; } public MessageTypeQueryResponse setMaxCharacters(Integer value) { this.MaxCharacters = value; return this; } public String getDefaultText() { return DefaultText; } public MessageTypeQueryResponse setDefaultText(String value) { this.DefaultText = value; return this; } public Integer getSendMethodId() { return SendMethodId; } public MessageTypeQueryResponse setSendMethodId(Integer value) { this.SendMethodId = value; return this; } } public static class CompanyMessageTemplate extends BaseModel { @References(MessageType.class) @Ignore() public MessageType Type = null; public ArrayList MessageServiceRelation = null; @Ignore() public ArrayList Services = null; @Required() public UUID CompanyId = null; public Integer Id = null; @Required() public Integer TypeId = null; @Required() public String Name = null; @Required() public String Sender = null; public String Title = null; @Required() public String Body = null; @Required() public Boolean Default = null; @Required() public Boolean Readonly = null; @Required() public String HeaderFooterBGColor = null; public Date ModifiedDate = null; public String MessageTemplate = null; public String Language = null; public MessageType getType() { return Type; } public CompanyMessageTemplate setType(MessageType value) { this.Type = value; return this; } public ArrayList getMessageServiceRelation() { return MessageServiceRelation; } public CompanyMessageTemplate setMessageServiceRelation(ArrayList value) { this.MessageServiceRelation = value; return this; } public ArrayList getServices() { return Services; } public CompanyMessageTemplate setServices(ArrayList value) { this.Services = value; return this; } public UUID getCompanyId() { return CompanyId; } public CompanyMessageTemplate setCompanyId(UUID value) { this.CompanyId = value; return this; } public Integer getId() { return Id; } public CompanyMessageTemplate setId(Integer value) { this.Id = value; return this; } public Integer getTypeId() { return TypeId; } public CompanyMessageTemplate setTypeId(Integer value) { this.TypeId = value; return this; } public String getName() { return Name; } public CompanyMessageTemplate setName(String value) { this.Name = value; return this; } public String getSender() { return Sender; } public CompanyMessageTemplate setSender(String value) { this.Sender = value; return this; } public String getTitle() { return Title; } public CompanyMessageTemplate setTitle(String value) { this.Title = value; return this; } public String getBody() { return Body; } public CompanyMessageTemplate setBody(String value) { this.Body = value; return this; } public Boolean isDefault() { return Default; } public CompanyMessageTemplate setDefault(Boolean value) { this.Default = value; return this; } public Boolean isReadonly() { return Readonly; } public CompanyMessageTemplate setReadonly(Boolean value) { this.Readonly = value; return this; } public String getHeaderFooterBGColor() { return HeaderFooterBGColor; } public CompanyMessageTemplate setHeaderFooterBGColor(String value) { this.HeaderFooterBGColor = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public CompanyMessageTemplate setModifiedDate(Date value) { this.ModifiedDate = value; return this; } public String getMessageTemplate() { return MessageTemplate; } public CompanyMessageTemplate setMessageTemplate(String value) { this.MessageTemplate = value; return this; } public String getLanguage() { return Language; } public CompanyMessageTemplate setLanguage(String value) { this.Language = value; return this; } } public static class MessageServices { public Integer Id = null; /** * Name of the service */ @ApiMember(Description="Name of the service") public String Name = null; /** * The image url of the service */ @ApiMember(Description="The image url of the service") public Uri ImageUrl = null; public Integer getId() { return Id; } public MessageServices setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public MessageServices setName(String value) { this.Name = value; return this; } public Uri getImageUrl() { return ImageUrl; } public MessageServices setImageUrl(Uri value) { this.ImageUrl = value; return this; } } @DataContract public static class QueryBase { /** * Skip over a given number of elements in a sequence and then return the remainder. Use this when you need paging.

Example:
?skip=10&orderBy=Id */ @DataMember(Order=1) public Integer Skip = null; /** * Return a given number of elements in a sequence and then skip over the remainder. Use this when you need paging.

Example:
?take=20 */ @DataMember(Order=2) public Integer Take = null; /** * Comma separated list of fields to order by. Prefix the field name with a minus if you wan't to invert the sort for that field.

Example:
?orderBy=Id,-Age,FirstName */ @DataMember(Order=3) public String OrderBy = null; /** * Comma separated list of fields to order by in descending order. Prefix the field name with a minus if you wan't to invert the sort for that field.

Example:
?orderByDesc=Id,-Age,FirstName */ @DataMember(Order=4) public String OrderByDesc = null; /** * Include any of the aggregates AVG, COUNT, FIRST, LAST, MAX, MIN, SUM in your result set. The results will be returned in the meta field.

Example:
?include=COUNT(*) as Total

or multiple fields with
?include=Count(*) Total, Min(Age), AVG(Age) AverageAge

or unique with
?include=COUNT(DISTINCT LivingStatus) as UniqueStatus */ @DataMember(Order=5) public String Include = null; @DataMember(Order=6) public String Fields = null; @DataMember(Order=7) public HashMap Meta = null; public Integer getSkip() { return Skip; } public QueryBase setSkip(Integer value) { this.Skip = value; return this; } public Integer getTake() { return Take; } public QueryBase setTake(Integer value) { this.Take = value; return this; } public String getOrderBy() { return OrderBy; } public QueryBase setOrderBy(String value) { this.OrderBy = value; return this; } public String getOrderByDesc() { return OrderByDesc; } public QueryBase setOrderByDesc(String value) { this.OrderByDesc = value; return this; } public String getInclude() { return Include; } public QueryBase setInclude(String value) { this.Include = value; return this; } public String getFields() { return Fields; } public QueryBase setFields(String value) { this.Fields = value; return this; } public HashMap getMeta() { return Meta; } public QueryBase setMeta(HashMap value) { this.Meta = value; return this; } } public static class BaseModel { } public static class CompanyMessageTemplateMessageServiceRelation extends BaseModel { @Required() public UUID CompanyId = null; public Integer Id = null; @Required() public Integer CompanyMessageTemplateId = null; @Required() public Integer ServiceId = null; public Date ModifiedDate = null; public UUID getCompanyId() { return CompanyId; } public CompanyMessageTemplateMessageServiceRelation setCompanyId(UUID value) { this.CompanyId = value; return this; } public Integer getId() { return Id; } public CompanyMessageTemplateMessageServiceRelation setId(Integer value) { this.Id = value; return this; } public Integer getCompanyMessageTemplateId() { return CompanyMessageTemplateId; } public CompanyMessageTemplateMessageServiceRelation setCompanyMessageTemplateId(Integer value) { this.CompanyMessageTemplateId = value; return this; } public Integer getServiceId() { return ServiceId; } public CompanyMessageTemplateMessageServiceRelation setServiceId(Integer value) { this.ServiceId = value; return this; } public Date getModifiedDate() { return ModifiedDate; } public CompanyMessageTemplateMessageServiceRelation setModifiedDate(Date value) { this.ModifiedDate = value; return this; } } public static class MessageTemplatesQueryResponse { /** * The message template id */ @ApiMember(Description="The message template id") public Integer Id = null; /** * The message template name. */ @ApiMember(Description="The message template name.") public String Name = null; /** * The message template title. */ @ApiMember(Description="The message template title.") public String Title = null; /** * The message template title. */ @ApiMember(Description="The message template title.") public String Body = null; /** * The message template sender (an email for message types with sendmethod 1, for SMS this cannot be set). */ @ApiMember(Description="The message template sender (an email for message types with sendmethod 1, for SMS this cannot be set).") public String Sender = null; /** * If the message template is the default message currently in use. */ @ApiMember(Description="If the message template is the default message currently in use.") public Boolean Default = null; /** * If the message type information. */ @ApiMember(Description="If the message type information.") public MessageTypeQueryResponse MessageType = null; /** * Template language. */ @ApiMember(Description="Template language.") public String Language = null; /** * The connected services which the template is valid for. If empty then it's valid for all services. */ @ApiMember(Description="The connected services which the template is valid for. If empty then it's valid for all services.") public ArrayList Services = null; public Integer getId() { return Id; } public MessageTemplatesQueryResponse setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public MessageTemplatesQueryResponse setName(String value) { this.Name = value; return this; } public String getTitle() { return Title; } public MessageTemplatesQueryResponse setTitle(String value) { this.Title = value; return this; } public String getBody() { return Body; } public MessageTemplatesQueryResponse setBody(String value) { this.Body = value; return this; } public String getSender() { return Sender; } public MessageTemplatesQueryResponse setSender(String value) { this.Sender = value; return this; } public Boolean isDefault() { return Default; } public MessageTemplatesQueryResponse setDefault(Boolean value) { this.Default = value; return this; } public MessageTypeQueryResponse getMessageType() { return MessageType; } public MessageTemplatesQueryResponse setMessageType(MessageTypeQueryResponse value) { this.MessageType = value; return this; } public String getLanguage() { return Language; } public MessageTemplatesQueryResponse setLanguage(String value) { this.Language = value; return this; } public ArrayList getServices() { return Services; } public MessageTemplatesQueryResponse setServices(ArrayList value) { this.Services = value; return this; } } }