/* Options:
Date: 2024-12-22 21:33:04
Version: 8.51
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://blazor-gallery.servicestack.net
//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: False
//ExportValueTypes: False
IncludeTypes: CreateBooking.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using MyApp.ServiceModel;
namespace MyApp.ServiceModel
{
///
///Booking Details
///
public partial class Booking
: AuditBase
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual RoomType RoomType { get; set; }
public virtual int RoomNumber { get; set; }
public virtual DateTime BookingStartDate { get; set; }
public virtual DateTime? BookingEndDate { get; set; }
public virtual decimal Cost { get; set; }
[References(typeof(MyApp.ServiceModel.Coupon))]
public virtual string CouponId { get; set; }
public virtual Coupon Discount { get; set; }
public virtual string Notes { get; set; }
public virtual bool? Cancelled { get; set; }
}
///
///Create a new Booking
///
[Route("/bookings", "POST")]
[ValidateRequest("HasRole(`Employee`)")]
public partial class CreateBooking
: IReturn, ICreateDb
{
///
///Name this Booking is for
///
[Validate("NotEmpty")]
public virtual string Name { get; set; }
public virtual string Photo { get; set; }
public virtual RoomType RoomType { get; set; }
[Validate("GreaterThan(0)")]
public virtual int RoomNumber { get; set; }
[Validate("GreaterThan(0)")]
public virtual decimal Cost { get; set; }
[Required]
public virtual DateTime BookingStartDate { get; set; }
public virtual DateTime? BookingEndDate { get; set; }
public virtual string Notes { get; set; }
public virtual string CouponId { get; set; }
}
public enum RoomType
{
Single,
Double,
Queen,
Twin,
Suite,
}
}