/* Options: Date: 2024-10-18 09:17:45 Version: 8.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.pwc.de //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: UpdateProduct.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using System.Net; using PwC.Metering.Core.Domain.Concretes.Models; using PwC.Metering.Core.Services.Contracts.Requests; using PwC.Metering.Core.Services.Contracts.Responses; using PwC.Metering.Core.Domain.Concretes.Interfaces; namespace PwC.Metering.Core.Domain.Concretes.Interfaces { /// /// Specifies that a data type should have a 'Name' property. /// public partial interface IHasName { /// ///The 'Name' property. /// string Name { get; set; } } } namespace PwC.Metering.Core.Domain.Concretes.Models { /// ///Represents a commission to consume services. /// [Api(Description="Represents a commission to consume services.")] public partial class Order : IHasName { /// ///The unique identifier of the order. /// [ApiMember(Description="The unique identifier of the order.", IsRequired=true)] public virtual int Id { get; set; } /// ///The unique identifier of the product, for which the order is made. /// [ApiMember(Description="The unique identifier of the product, for which the order is made.", IsRequired=true)] public virtual int ProductId { get; set; } /// ///The unique identifier of the user account, who placed the order. /// [ApiMember(Description="The unique identifier of the user account, who placed the order.", IsRequired=true)] public virtual int AccountId { get; set; } /// ///A name to identify the order. /// [ApiMember(Description="A name to identify the order.", IsRequired=true)] [Validate("NotEmpty")] public virtual string Name { get; set; } /// ///The name of the service, for which the order was made. /// [ApiMember(Description="The name of the service, for which the order was made.")] public virtual string ServiceName { get; set; } /// ///The time stamp at which the order was initiated. /// [ApiMember(Description="The time stamp at which the order was initiated.")] public virtual DateTime? RequestTimestamp { get; set; } /// ///The time stamp at which the order was completed. /// [ApiMember(Description="The time stamp at which the order was completed.")] public virtual DateTime? ResponseTimestamp { get; set; } /// ///The URI from which the order was initiated. /// [ApiMember(Description="The URI from which the order was initiated.")] public virtual string RequestUri { get; set; } /// ///The HTTP method of the order request. /// [ApiMember(Description="The HTTP method of the order request.")] public virtual string RequestHttpMethod { get; set; } /// ///The duration of the order request. /// [ApiMember(Description="The duration of the order request.")] public virtual TimeSpan? RequestDuration { get; set; } /// ///The HTTP status code of the order request. /// [ApiMember(Description="The HTTP status code of the order request.")] public virtual HttpStatusCode ResponseStatusCode { get; set; } /// ///The IP address of client, who placed the order. /// [ApiMember(Description="The IP address of client, who placed the order.")] public virtual string ClientIPAddress { get; set; } /// ///The unit of measurement for the order. /// [ApiMember(Description="The unit of measurement for the order.")] public virtual string UnitOfMeasurement { get; set; } /// ///The type of process, for which the order is charged. /// [ApiMember(Description="The type of process, for which the order is charged.")] public virtual string ProcessType { get; set; } /// ///The type of data, for which the order is charged. /// [ApiMember(Description="The type of data, for which the order is charged.")] public virtual string DataType { get; set; } /// ///The name of the data, for which the order is charged. /// [ApiMember(Description="The name of the data, for which the order is charged.")] public virtual string DataName { get; set; } /// ///The date of creation of the order. /// [ApiMember(Description="The date of creation of the order.")] public virtual DateTime CreationDate { get; set; } /// ///The final date to retain the order in the records. After this date, the order is expunged from the records. /// [ApiMember(Description="The final date to retain the order in the records. After this date, the order is expunged from the records.")] public virtual DateTime? ExpiryDate { get; set; } /// ///Indicates whether the order is simulated for test purposes. True if the order is simulated for test purposes; otherwise it is a false order for production purposes. /// [ApiMember(Description="Indicates whether the order is simulated for test purposes. True if the order is simulated for test purposes; otherwise it is a false order for production purposes.")] public virtual bool IsTest { get; set; } } /// ///Represents a product. /// [Api(Description="Represents a product.")] public partial class Product : IHasName { public Product() { Tags = new List{}; } /// ///The unique identifier of the product. /// [ApiMember(Description="The unique identifier of the product.", IsRequired=true)] public virtual int Id { get; set; } /// ///The position of this instance in a collection of 'Product' instances /// [ApiMember(Description="The position of this instance in a collection of 'Product' instances", IsRequired=true)] public virtual int Index { get; set; } /// ///The name of the product. /// [ApiMember(Description="The name of the product.", IsRequired=true)] [Validate("NotEmpty")] public virtual string Name { get; set; } /// ///The version of the product. /// [ApiMember(Description="The version of the product.", IsRequired=true)] [Validate("NotEmpty")] public virtual string Version { get; set; } /// ///The version of the product. /// [ApiMember(Description="The version of the product.")] public virtual string Description { get; set; } /// ///Tags associated with the product. /// [ApiMember(Description="Tags associated with the product.")] public virtual List Tags { get; set; } } } namespace PwC.Metering.Core.Services.Contracts.Requests { /// ///Represents a service request to update product data. /// [Route("/sync/products/{Id}", "PUT")] [Api(Description="Represents a service request to update product data.")] public partial class UpdateProduct : UpdateProductBase, IReturn { public UpdateProduct() { Tags = new List{}; } /// ///The unique identifier of the product. /// [ApiMember(Description="The unique identifier of the product.")] public virtual int Id { get; set; } /// ///The name of the product. /// [ApiMember(Description="The name of the product.")] public virtual string Name { get; set; } /// ///The description of the product. /// [ApiMember(Description="The description of the product.")] public virtual string Description { get; set; } /// ///The version of the product. /// [ApiMember(Description="The version of the product.")] public virtual string Version { get; set; } /// ///Tags associated with the product. /// [ApiMember(Description="Tags associated with the product.")] public virtual List Tags { get; set; } } /// ///Specifies a service request to update product data. /// [Api(Description="Specifies a service request to update product data.")] public partial class UpdateProductBase : IPut { public UpdateProductBase() { Tags = new List{}; } /// ///The unique identifier of the product. /// [ApiMember(Description="The unique identifier of the product.")] public virtual int Id { get; set; } /// ///The name of the product. /// [ApiMember(Description="The name of the product.")] public virtual string Name { get; set; } /// ///The description of the product. /// [ApiMember(Description="The description of the product.")] public virtual string Description { get; set; } /// ///The version of the product. /// [ApiMember(Description="The version of the product.")] public virtual string Version { get; set; } /// ///Tags associated with the product. /// [ApiMember(Description="Tags associated with the product.")] public virtual List Tags { get; set; } } } namespace PwC.Metering.Core.Services.Contracts.Responses { /// ///Represents a service response that encapsulates product data. /// [Api(Description="Represents a service response that encapsulates product data.")] public partial class ProductResponse : ServiceResponseBase { public ProductResponse() { Orders = new List{}; } /// ///The product data of the response. /// [ApiMember(Description="The product data of the response.")] public virtual Product Product { get; set; } /// ///The list of orders associated with the encapsulated product. /// [ApiMember(Description="The list of orders associated with the encapsulated product.")] public virtual List Orders { get; set; } /// ///Data structure that holds error information from a service operation. /// [ApiMember(Description="Data structure that holds error information from a service operation.")] public virtual ResponseStatus ResponseStatus { get; set; } } /// ///Specifies a base service response class that contains a structured error information. /// [Api(Description="Specifies a base service response class that contains a structured error information.")] public partial class ServiceResponseBase { /// ///Data structure that holds error information from a service operation. /// [ApiMember(Description="Data structure that holds error information from a service operation.")] public virtual ResponseStatus ResponseStatus { get; set; } } }