/* Options: Date: 2026-10-16 00:20:25 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //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: KpiV2DetailRequest.* //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 System.Net; using CRM.AgencyPlatform.API.Internal; namespace CRM.AgencyPlatform.API.Internal { [Route("/v1/dashboard/kpiv2/detail", "POST,OPTIONS")] public partial class KpiV2DetailRequest : IReturn { public virtual Guid BranchId { get; set; } public virtual Guid? StationId { get; set; } public virtual Guid? EmployeeId { get; set; } public virtual DateTime FromDate { get; set; } public virtual DateTime ToDate { get; set; } } public partial class KpiV2DetailResponse { public virtual ResponseStatus ResponseStatus { get; set; } public virtual SvcDetail Detail { get; set; } } public partial class SvcAverage { public virtual int Count { get; set; } public virtual double Served { get; set; } public virtual double? AvgServiceSec { get; set; } public virtual double? MedianServiceSec { get; set; } public virtual double? AvgWaitSec { get; set; } public virtual double? Utilization { get; set; } public virtual double IdleSec { get; set; } public virtual double PausedSec { get; set; } public virtual double NoShows { get; set; } public virtual double SignedSec { get; set; } public virtual decimal? FeesEarned { get; set; } public virtual decimal? FeesPerStaffedHour { get; set; } public virtual decimal? LaborCost { get; set; } public virtual decimal? Contribution { get; set; } public virtual decimal? LostNoShowFees { get; set; } } public partial class SvcClerkRow { public virtual Guid EmployeeId { get; set; } public virtual string Name { get; set; } public virtual List Windows { get; set; } = []; public virtual decimal? LoadedRate { get; set; } public virtual bool RateSet { get; set; } public virtual bool RateLocked { get; set; } public virtual SvcMetrics Metrics { get; set; } } public partial class SvcDetail { public virtual string Kind { get; set; } public virtual SvcWindowRow Window { get; set; } public virtual SvcClerkRow Clerk { get; set; } public virtual SvcMetrics BranchMetrics { get; set; } public virtual SvcAverage PerRowAverage { get; set; } public virtual List Sessions { get; set; } = []; public virtual List Services { get; set; } = []; public virtual bool CanSeeStaff { get; set; } public virtual bool CanSeeFinancial { get; set; } public virtual bool CanSeePay { get; set; } } public partial class SvcFeeChange { public virtual Guid LocationId { get; set; } public virtual DateTime OnDate { get; set; } public virtual decimal FromFee { get; set; } public virtual decimal ToFee { get; set; } } public partial class SvcMetrics { public virtual int Checkins { get; set; } public virtual int Walkins { get; set; } public virtual int Appts { get; set; } public virtual int Served { get; set; } public virtual int NoShows { get; set; } public virtual int ApptNoShows { get; set; } public virtual int CancelledAtWindow { get; set; } public virtual int Abandoned { get; set; } public virtual int Called { get; set; } public virtual int CalledUp { get; set; } public virtual double? AbandonRate { get; set; } public virtual double? NoShowRate { get; set; } public virtual double? AvgServiceSec { get; set; } public virtual double? MedianServiceSec { get; set; } public virtual double? AvgWaitSec { get; set; } public virtual int MaxWaitSec { get; set; } public virtual double? AvgWalkUpSec { get; set; } public virtual double? ExpectedServiceSec { get; set; } public virtual long SignedSec { get; set; } public virtual long ServingSec { get; set; } public virtual long PausedSec { get; set; } public virtual long IdleSec { get; set; } public virtual long UnstaffedSec { get; set; } public virtual double? Utilization { get; set; } public virtual double? IdleShare { get; set; } public virtual double? PausedShare { get; set; } public virtual int Sessions { get; set; } public virtual int OpenDays { get; set; } public virtual decimal? FeesEarned { get; set; } public virtual decimal? AvgFee { get; set; } public virtual decimal? FeesPerStaffedHour { get; set; } public virtual decimal? ExpectedFeesPerStaffedHour { get; set; } public virtual decimal? LaborCost { get; set; } public virtual bool LaborPartial { get; set; } public virtual List MissingCostEmployeeIds { get; set; } = []; public virtual List MissingCost { get; set; } = []; public virtual bool LaborLocked { get; set; } public virtual decimal? Contribution { get; set; } public virtual decimal? LostFees { get; set; } public virtual decimal? LostNoShowFees { get; set; } public virtual Dictionary Mix { get; set; } = new(); public virtual int[] HourlyServed { get; set; } = []; public virtual decimal[] HourlyFees { get; set; } = []; public virtual decimal[] HourlyCost { get; set; } = []; public virtual List Tints { get; set; } = []; } public partial class SvcNamedTime { public virtual Guid Id { get; set; } public virtual string Name { get; set; } public virtual long SignedSec { get; set; } public virtual int Served { get; set; } } public partial class SvcServiceRow { public virtual Guid LineId { get; set; } public virtual string Name { get; set; } public virtual int Completed { get; set; } public virtual double? AvgServiceSec { get; set; } public virtual double? BranchAvgServiceSec { get; set; } public virtual decimal? FeesEarned { get; set; } public virtual decimal? FeeCurrent { get; set; } public virtual decimal? FeeMin { get; set; } public virtual decimal? FeeMax { get; set; } public virtual decimal? FeePerMinute { get; set; } public virtual decimal? BranchFeePerMinute { get; set; } public virtual List FeeChanges { get; set; } = []; } public partial class SvcSession { public virtual Guid SessionId { get; set; } public virtual Guid StationId { get; set; } public virtual string StationName { get; set; } public virtual Guid EmployeeId { get; set; } public virtual string EmployeeName { get; set; } public virtual DateTime LocalIn { get; set; } public virtual DateTime LocalOut { get; set; } public virtual bool IsOpen { get; set; } public virtual string EndReason { get; set; } public virtual long PausedSec { get; set; } } public partial class SvcTint { public virtual string Field { get; set; } public virtual string Tone { get; set; } public virtual string Reason { get; set; } public virtual double? Value { get; set; } public virtual double? Reference { get; set; } public virtual double? BranchValue { get; set; } } public partial class SvcWindowRow { public virtual Guid StationId { get; set; } public virtual string Name { get; set; } public virtual List Clerks { get; set; } = []; public virtual bool NeverStaffed { get; set; } public virtual DateTime? LastStaffedUtc { get; set; } public virtual string LastStaffedBy { get; set; } public virtual SvcMetrics Metrics { get; set; } } } namespace ServiceStack { [DataContract] public partial class ResponseStatus : IMeta { [DataMember(Order=1)] public virtual string ErrorCode { get; set; } [DataMember(Order=2)] public virtual string Message { get; set; } [DataMember(Order=3)] public virtual string StackTrace { get; set; } [DataMember(Order=4)] public virtual List Errors { get; set; } = []; [DataMember(Order=5)] public virtual Dictionary Meta { get; set; } = new(); } }