示例#1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UserScheduleAdherence" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="User">The user for whom this status applies.</param>
 /// <param name="ManagementUnit">The management unit to which this user belongs.</param>
 /// <param name="ActiveQueues">The list of queues to which this user is joined.</param>
 public UserScheduleAdherence(string Name = null, UserReference User = null, ManagementUnit ManagementUnit = null, List <QueueReference> ActiveQueues = null)
 {
     this.Name           = Name;
     this.User           = User;
     this.ManagementUnit = ManagementUnit;
     this.ActiveQueues   = ActiveQueues;
 }
示例#2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BuAgentScheduleRescheduleResponse" /> class.
 /// </summary>
 /// <param name="User">The user to whom this agent schedule applies.</param>
 /// <param name="Shifts">The shift definitions for this agent schedule.</param>
 /// <param name="FullDayTimeOffMarkers">Full day time off markers which apply to this agent schedule.</param>
 /// <param name="WorkPlan">The work plan for this user.</param>
 /// <param name="WorkPlansPerWeek">The work plans per week for this user from the work plan rotation. Null values in the list denotes that user is not part of any work plan for that week.</param>
 public BuAgentScheduleRescheduleResponse(UserReference User = null, List <BuAgentScheduleShift> Shifts = null, List <BuFullDayTimeOffMarker> FullDayTimeOffMarkers = null, WorkPlanReference WorkPlan = null, List <WorkPlanReference> WorkPlansPerWeek = null)
 {
     this.User   = User;
     this.Shifts = Shifts;
     this.FullDayTimeOffMarkers = FullDayTimeOffMarkers;
     this.WorkPlan         = WorkPlan;
     this.WorkPlansPerWeek = WorkPlansPerWeek;
 }
示例#3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BulkUpdateShiftTradeStateResultItem" /> class.
 /// </summary>
 /// <param name="State">The state of the shift trade after the update request is processed.</param>
 /// <param name="ReviewedBy">The user who reviewed the request, if applicable.</param>
 /// <param name="ReviewedDate">The date the request was reviewed, if applicable. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="FailureReason">The reason the update failed, if applicable.</param>
 /// <param name="Metadata">Version metadata for the shift trade.</param>
 public BulkUpdateShiftTradeStateResultItem(StateEnum?State = null, UserReference ReviewedBy = null, DateTime?ReviewedDate = null, FailureReasonEnum?FailureReason = null, WfmVersionedEntityMetadata Metadata = null)
 {
     this.State         = State;
     this.ReviewedBy    = ReviewedBy;
     this.ReviewedDate  = ReviewedDate;
     this.FailureReason = FailureReason;
     this.Metadata      = Metadata;
 }
示例#4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BuAgentScheduleQueryResponse" /> class.
 /// </summary>
 /// <param name="User">The user to whom this agent schedule applies.</param>
 /// <param name="Shifts">The shift definitions for this agent schedule.</param>
 /// <param name="FullDayTimeOffMarkers">Full day time off markers which apply to this agent schedule.</param>
 /// <param name="WorkPlan">The work plan for this user.</param>
 /// <param name="WorkPlansPerWeek">The work plans per week for this user from the work plan rotation. Null values in the list denotes that user is not part of any work plan for that week.</param>
 /// <param name="Metadata">Versioned entity metadata for this agent schedule.</param>
 public BuAgentScheduleQueryResponse(UserReference User = null, List <BuAgentScheduleShift> Shifts = null, List <BuFullDayTimeOffMarker> FullDayTimeOffMarkers = null, WorkPlanReference WorkPlan = null, List <WorkPlanReference> WorkPlansPerWeek = null, WfmVersionedEntityMetadata Metadata = null)
 {
     this.User   = User;
     this.Shifts = Shifts;
     this.FullDayTimeOffMarkers = FullDayTimeOffMarkers;
     this.WorkPlan         = WorkPlan;
     this.WorkPlansPerWeek = WorkPlansPerWeek;
     this.Metadata         = Metadata;
 }
示例#5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TimeOffRequestNotification" /> class.
 /// </summary>
 /// <param name="TimeOffRequestId">The ID of this time off request.</param>
 /// <param name="User">The user associated with this time off request.</param>
 /// <param name="IsFullDayRequest">Whether this is a full day request (false means partial day).</param>
 /// <param name="Status">The status of this time off request.</param>
 /// <param name="PartialDayStartDateTimes">A set of start date-times in ISO-8601 format for partial day requests.  Will be not empty if isFullDayRequest == false.</param>
 /// <param name="FullDayManagementUnitDates">A set of dates in yyyy-MM-dd format.  Should be interpreted in the management unit&#39;s configured time zone.  Will be not empty if isFullDayRequest == true.</param>
 public TimeOffRequestNotification(string TimeOffRequestId = null, UserReference User = null, bool?IsFullDayRequest = null, StatusEnum?Status = null, List <DateTime?> PartialDayStartDateTimes = null, List <string> FullDayManagementUnitDates = null)
 {
     this.TimeOffRequestId           = TimeOffRequestId;
     this.User                       = User;
     this.IsFullDayRequest           = IsFullDayRequest;
     this.Status                     = Status;
     this.PartialDayStartDateTimes   = PartialDayStartDateTimes;
     this.FullDayManagementUnitDates = FullDayManagementUnitDates;
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AdherenceExplanationNotification" /> class.
 /// </summary>
 /// <param name="Agent">The agent for whom the adherence explanation applies.</param>
 /// <param name="ManagementUnit">The management unit to which the agent belonged at the time the adherence explanation was submitted.</param>
 /// <param name="BusinessUnit">The business unit to which the agent belonged at the time the adherence explanation was submitted.</param>
 /// <param name="StartDate">The start date of the adherence explanation. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="LengthMinutes">The length of the adherence explanation in minutes.</param>
 /// <param name="Status">The status of the adherence explanation.</param>
 /// <param name="Type">The type of the adherence explanation.</param>
 /// <param name="Notes">Notes about the adherence explanation.</param>
 public AdherenceExplanationNotification(UserReference Agent = null, ManagementUnitReference ManagementUnit = null, BusinessUnitReference BusinessUnit = null, DateTime?StartDate = null, int?LengthMinutes = null, StatusEnum?Status = null, TypeEnum?Type = null, string Notes = null)
 {
     this.Agent          = Agent;
     this.ManagementUnit = ManagementUnit;
     this.BusinessUnit   = BusinessUnit;
     this.StartDate      = StartDate;
     this.LengthMinutes  = LengthMinutes;
     this.Status         = Status;
     this.Type           = Type;
     this.Notes          = Notes;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="WfmAgent" /> class.
 /// </summary>
 /// <param name="User">The user associated with this data.</param>
 /// <param name="WorkPlan">The work plan associated with this agent.</param>
 /// <param name="TimeZone">The time zone for this agent. Defaults to the time zone of the management unit to which the agent belongs.</param>
 /// <param name="AcceptDirectShiftTrades">Whether the agent accepts direct shift trade requests.</param>
 /// <param name="Metadata">Metadata for this agent.</param>
 /// <param name="Queues">List of queues to which the agent belongs and which are defined in the service goal groups in this management unit.</param>
 /// <param name="Languages">The list of languages.</param>
 /// <param name="Skills">The list of skills.</param>
 /// <param name="Schedulable">Whether the agent has the permission to be included in schedule generation.</param>
 public WfmAgent(UserReference User = null, WorkPlanReference WorkPlan = null, WfmTimeZone TimeZone = null, bool?AcceptDirectShiftTrades = null, WfmVersionedEntityMetadata Metadata = null, List <QueueReference> Queues = null, List <LanguageReference> Languages = null, List <RoutingSkillReference> Skills = null, bool?Schedulable = null)
 {
     this.User     = User;
     this.WorkPlan = WorkPlan;
     this.TimeZone = TimeZone;
     this.AcceptDirectShiftTrades = AcceptDirectShiftTrades;
     this.Metadata    = Metadata;
     this.Queues      = Queues;
     this.Languages   = Languages;
     this.Skills      = Skills;
     this.Schedulable = Schedulable;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="WfmVersionedEntityMetadata" /> class.
        /// </summary>


        /// <param name="Version">The version of the associated entity.  Used to prevent conflicts on concurrent edits (required).</param>



        /// <param name="ModifiedBy">The user who last modified the associated entity.</param>



        public WfmVersionedEntityMetadata(int?Version = null, UserReference ModifiedBy = null)
        {
            // to ensure "Version" is required (not null)
            if (Version == null)
            {
                throw new InvalidDataException("Version is a required property for WfmVersionedEntityMetadata and cannot be null");
            }
            else
            {
                this.Version = Version;
            }



            this.ModifiedBy = ModifiedBy;
        }
示例#9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TimeOffRequestLookup" /> class.
 /// </summary>
 /// <param name="Id">The id of the time off request (required).</param>
 /// <param name="User">The user that the time off request belongs to (required).</param>
 /// <param name="IsFullDayRequest">Whether this is a full day request (false means partial day).</param>
 /// <param name="MarkedAsRead">Whether this request has been marked as read by the agent.</param>
 /// <param name="ActivityCodeId">The ID of the activity code associated with this time off request. Activity code must be of the TimeOff category.</param>
 /// <param name="Status">The status of this time off request.</param>
 /// <param name="PartialDayStartDateTimes">A set of start date-times in ISO-8601 format for partial day requests.  Will be not empty if isFullDayRequest == false.</param>
 /// <param name="FullDayManagementUnitDates">A set of dates in yyyy-MM-dd format.  Should be interpreted in the management unit&#39;s configured time zone.  Will be not empty if isFullDayRequest == true.</param>
 /// <param name="DailyDurationMinutes">The daily duration of this time off request in minutes.</param>
 /// <param name="Notes">Notes about the time off request.</param>
 /// <param name="SubmittedBy">The user who submitted this time off request.</param>
 /// <param name="SubmittedDate">The timestamp when this request was submitted. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="ReviewedBy">The user who reviewed this time off request.</param>
 /// <param name="ReviewedDate">The timestamp when this request was reviewed. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="Metadata">The version metadata of the time off request.</param>
 public TimeOffRequestLookup(string Id = null, UserReference User = null, bool?IsFullDayRequest = null, bool?MarkedAsRead = null, string ActivityCodeId = null, StatusEnum?Status = null, List <DateTime?> PartialDayStartDateTimes = null, List <string> FullDayManagementUnitDates = null, int?DailyDurationMinutes = null, string Notes = null, UserReference SubmittedBy = null, DateTime?SubmittedDate = null, UserReference ReviewedBy = null, DateTime?ReviewedDate = null, WfmVersionedEntityMetadata Metadata = null)
 {
     this.Id                         = Id;
     this.User                       = User;
     this.IsFullDayRequest           = IsFullDayRequest;
     this.MarkedAsRead               = MarkedAsRead;
     this.ActivityCodeId             = ActivityCodeId;
     this.Status                     = Status;
     this.PartialDayStartDateTimes   = PartialDayStartDateTimes;
     this.FullDayManagementUnitDates = FullDayManagementUnitDates;
     this.DailyDurationMinutes       = DailyDurationMinutes;
     this.Notes                      = Notes;
     this.SubmittedBy                = SubmittedBy;
     this.SubmittedDate              = SubmittedDate;
     this.ReviewedBy                 = ReviewedBy;
     this.ReviewedDate               = ReviewedDate;
     this.Metadata                   = Metadata;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="WorkPlanRotationAgentResponse" /> class.
 /// </summary>
 /// <param name="User">The user associated with this work plan rotation.</param>
 /// <param name="DateRange">The date range to which this agent is effective in the work plan rotation.</param>
 /// <param name="Position">Start position of the work plan in the pattern for this agent in the work plan rotation. Position value starts from 0.</param>
 public WorkPlanRotationAgentResponse(UserReference User = null, DateRangeWithOptionalEnd DateRange = null, int?Position = null)
 {
     this.User      = User;
     this.DateRange = DateRange;
     this.Position  = Position;
 }
示例#11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UserTimeOffRequestReference" /> class.
 /// </summary>
 /// <param name="Id">The id of the time off request.</param>
 /// <param name="User">The ID of the user to whom the time off request applies (required).</param>
 public UserTimeOffRequestReference(string Id = null, UserReference User = null)
 {
     this.Id   = Id;
     this.User = User;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="AssignmentError" /> class.
 /// </summary>
 /// <param name="User">A user that is failed to be removed from the performance profile.</param>
 /// <param name="Message">Error message from membership assignment.</param>
 public AssignmentError(UserReference User = null, string Message = null)
 {
     this.User    = User;
     this.Message = Message;
 }
示例#13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ManagementUnit" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="Division">The division to which this entity belongs..</param>
 /// <param name="StartDayOfWeek">Start day of week for scheduling and forecasting purposes.</param>
 /// <param name="TimeZone">The time zone for the management unit in standard Olson format.</param>
 /// <param name="Settings">The configuration settings for this management unit.</param>
 /// <param name="Metadata">Version info metadata for this management unit. Deprecated, use settings.metadata.</param>
 /// <param name="ModifiedBy">The user who last modified this entity.  Deprecated, use field from settings.metadata instead.</param>
 public ManagementUnit(string Name = null, Division Division = null, StartDayOfWeekEnum?StartDayOfWeek = null, string TimeZone = null, ManagementUnitSettings Settings = null, WfmVersionedEntityMetadata Metadata = null, UserReference ModifiedBy = null)
 {
     this.Name           = Name;
     this.Division       = Division;
     this.StartDayOfWeek = StartDayOfWeek;
     this.TimeZone       = TimeZone;
     this.Settings       = Settings;
     this.Metadata       = Metadata;
     this.ModifiedBy     = ModifiedBy;
 }
示例#14
0
 /// <summary>
 /// Initializes a new instance of the <see cref="LearningAssignment" /> class.
 /// </summary>
 /// <param name="Assessment">The assessment associated with this assignment.</param>
 /// <param name="State">The Learning Assignment state.</param>
 /// <param name="DateRecommendedForCompletion">The recommended completion date of the assignment. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="Version">The version of Learning module assigned.</param>
 /// <param name="Module">The Learning module object associated with this assignment.</param>
 /// <param name="User">The user to whom the assignment is assigned.</param>
 /// <param name="AssessmentForm">The assessment form associated with this assignment.</param>
 public LearningAssignment(LearningAssessment Assessment = null, StateEnum?State = null, DateTime?DateRecommendedForCompletion = null, int?Version = null, LearningModule Module = null, UserReference User = null, AssessmentForm AssessmentForm = null)
 {
     this.Assessment = Assessment;
     this.State      = State;
     this.DateRecommendedForCompletion = DateRecommendedForCompletion;
     this.Version        = Version;
     this.Module         = Module;
     this.User           = User;
     this.AssessmentForm = AssessmentForm;
 }
示例#15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BuAgentScheduleHistoryChangeMetadata" /> class.
 /// </summary>
 /// <param name="DateModified">The timestamp of the schedule change. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="ModifiedBy">The user that made the schedule change.</param>
 public BuAgentScheduleHistoryChangeMetadata(DateTime?DateModified = null, UserReference ModifiedBy = null)
 {
     this.DateModified = DateModified;
     this.ModifiedBy   = ModifiedBy;
 }
示例#16
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BuScheduleRun" /> class.
 /// </summary>
 /// <param name="SchedulerRunId">The scheduler run ID.  Reference this value for support.</param>
 /// <param name="IntradayRescheduling">Whether this is an intraday rescheduling run.</param>
 /// <param name="State">The state of the generation run.</param>
 /// <param name="WeekCount">The number of weeks spanned by the schedule.</param>
 /// <param name="PercentComplete">Percent completion of the schedule run.</param>
 /// <param name="TargetWeek">The start date of the target week. Dates are represented as an ISO-8601 string. For example: yyyy-MM-dd.</param>
 /// <param name="Schedule">The generated schedule.  Null unless the schedule run is complete.</param>
 /// <param name="ScheduleDescription">The description of the generated schedule.</param>
 /// <param name="SchedulingStartTime">When the schedule generation run started. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="SchedulingStartedBy">The user who started the scheduling run.</param>
 /// <param name="SchedulingCanceledBy">The user who canceled the scheduling run, if applicable.</param>
 /// <param name="SchedulingCompletedTime">When the scheduling run was completed, if applicable. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="MessageCount">The number of schedule generation messages for this schedule generation run.</param>
 /// <param name="MessageSeverityCounts">The list of schedule generation message counts by severity for this schedule generation run.</param>
 /// <param name="ReschedulingOptions">Rescheduling options for this run.  Null unless intradayRescheduling is true.</param>
 /// <param name="ReschedulingResultExpiration">When the reschedule result will expire.  Null unless intradayRescheduling is true. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 public BuScheduleRun(string SchedulerRunId = null, bool?IntradayRescheduling = null, StateEnum?State = null, int?WeekCount = null, double?PercentComplete = null, String TargetWeek = null, BuScheduleReference Schedule = null, string ScheduleDescription = null, DateTime?SchedulingStartTime = null, UserReference SchedulingStartedBy = null, UserReference SchedulingCanceledBy = null, DateTime?SchedulingCompletedTime = null, int?MessageCount = null, List <SchedulerMessageSeverityCount> MessageSeverityCounts = null, ReschedulingOptionsRunResponse ReschedulingOptions = null, DateTime?ReschedulingResultExpiration = null)
 {
     this.SchedulerRunId       = SchedulerRunId;
     this.IntradayRescheduling = IntradayRescheduling;
     this.State                        = State;
     this.WeekCount                    = WeekCount;
     this.PercentComplete              = PercentComplete;
     this.TargetWeek                   = TargetWeek;
     this.Schedule                     = Schedule;
     this.ScheduleDescription          = ScheduleDescription;
     this.SchedulingStartTime          = SchedulingStartTime;
     this.SchedulingStartedBy          = SchedulingStartedBy;
     this.SchedulingCanceledBy         = SchedulingCanceledBy;
     this.SchedulingCompletedTime      = SchedulingCompletedTime;
     this.MessageCount                 = MessageCount;
     this.MessageSeverityCounts        = MessageSeverityCounts;
     this.ReschedulingOptions          = ReschedulingOptions;
     this.ReschedulingResultExpiration = ReschedulingResultExpiration;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SchedulingRunResponse" /> class.
 /// </summary>
 /// <param name="RunId">ID of the schedule run.</param>
 /// <param name="SchedulerRunId">The runId from scheduler service.  Useful for debugging schedule errors.</param>
 /// <param name="IntradayRescheduling">Whether this is the result of a rescheduling request.</param>
 /// <param name="State">Status of the schedule run.</param>
 /// <param name="PercentComplete">Completion percentage of the schedule run.</param>
 /// <param name="TargetWeek">The start date of the week for which the scheduling is done in yyyy-MM-dd format.</param>
 /// <param name="ScheduleId">ID of the schedule. Does not apply to reschedule, see reschedulingOptions.existingScheduleId.</param>
 /// <param name="ScheduleDescription">Description of the schedule.</param>
 /// <param name="SchedulingStartTime">Start time of the schedule run. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="SchedulingStartedBy">User that started the schedule run.</param>
 /// <param name="SchedulingCanceledBy">User that canceled the schedule run.</param>
 /// <param name="SchedulingCompletedTime">Time at which the scheduling run was completed. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="ReschedulingOptions">The selected options for the reschedule request. Will always be null if intradayRescheduling is false.</param>
 /// <param name="ReschedulingResultExpiration">When the rescheduling result data will expire. Results are kept temporarily as they should be applied as soon as possible after the run finishes.  Will always be null if intradayRescheduling is false. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="Applied">Whether the rescheduling run has been marked applied.</param>
 /// <param name="UnscheduledAgents">Agents that were not scheduled in the rescheduling operation. Will always be null if intradayRescheduling is false.</param>
 public SchedulingRunResponse(string RunId = null, string SchedulerRunId = null, bool?IntradayRescheduling = null, StateEnum?State = null, double?PercentComplete = null, string TargetWeek = null, string ScheduleId = null, string ScheduleDescription = null, DateTime?SchedulingStartTime = null, UserReference SchedulingStartedBy = null, UserReference SchedulingCanceledBy = null, DateTime?SchedulingCompletedTime = null, ReschedulingOptionsResponse ReschedulingOptions = null, DateTime?ReschedulingResultExpiration = null, bool?Applied = null, List <UnscheduledAgentWarning> UnscheduledAgents = null)
 {
     this.RunId                        = RunId;
     this.SchedulerRunId               = SchedulerRunId;
     this.IntradayRescheduling         = IntradayRescheduling;
     this.State                        = State;
     this.PercentComplete              = PercentComplete;
     this.TargetWeek                   = TargetWeek;
     this.ScheduleId                   = ScheduleId;
     this.ScheduleDescription          = ScheduleDescription;
     this.SchedulingStartTime          = SchedulingStartTime;
     this.SchedulingStartedBy          = SchedulingStartedBy;
     this.SchedulingCanceledBy         = SchedulingCanceledBy;
     this.SchedulingCompletedTime      = SchedulingCompletedTime;
     this.ReschedulingOptions          = ReschedulingOptions;
     this.ReschedulingResultExpiration = ReschedulingResultExpiration;
     this.Applied                      = Applied;
     this.UnscheduledAgents            = UnscheduledAgents;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="InvalidAssignment" /> class.
 /// </summary>
 /// <param name="User">Invalid user for validation.</param>
 /// <param name="Message">The reason for the invalid input for validation.</param>
 public InvalidAssignment(UserReference User = null, string Message = null)
 {
     this.User    = User;
     this.Message = Message;
 }
示例#19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AgentManagementUnitReference" /> class.
 /// </summary>
 /// <param name="User">The user (agent) for whom the management unit was requested.</param>
 /// <param name="ManagementUnit">The management to which the user (agent) belongs.</param>
 /// <param name="BusinessUnit">The business unit to which the user (agent) belongs. Populate with expand=businessUnit.</param>
 public AgentManagementUnitReference(UserReference User = null, ManagementUnitReference ManagementUnit = null, BusinessUnitReference BusinessUnit = null)
 {
     this.User           = User;
     this.ManagementUnit = ManagementUnit;
     this.BusinessUnit   = BusinessUnit;
 }
示例#20
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ManagementUnit" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="Division">The division to which this entity belongs..</param>



        /// <param name="StartDayOfWeek">Start day of week for scheduling and forecasting purposes.</param>



        /// <param name="TimeZone">The time zone for the management unit in standard Olson Format (See https://en.wikipedia.org/wiki/Tz_database).</param>



        /// <param name="Settings">The configuration settings for this management unit.</param>



        /// <param name="Version">The version of the underlying entity.  Deprecated, use metadata field instead (required).</param>



        /// <param name="ModifiedBy">The user who last modified this entity.  Deprecated, use metadata field instead.</param>



        /// <param name="Metadata">Version info metadata for this management unit (required).</param>



        public ManagementUnit(string Name = null, Division Division = null, StartDayOfWeekEnum?StartDayOfWeek = null, string TimeZone = null, ManagementUnitSettings Settings = null, int?Version = null, UserReference ModifiedBy = null, WfmVersionedEntityMetadata Metadata = null)
        {
            // to ensure "Version" is required (not null)
            if (Version == null)
            {
                throw new InvalidDataException("Version is a required property for ManagementUnit and cannot be null");
            }
            else
            {
                this.Version = Version;
            }



            // to ensure "Metadata" is required (not null)
            if (Metadata == null)
            {
                throw new InvalidDataException("Metadata is a required property for ManagementUnit and cannot be null");
            }
            else
            {
                this.Metadata = Metadata;
            }



            this.Name = Name;



            this.Division = Division;



            this.StartDayOfWeek = StartDayOfWeek;



            this.TimeZone = TimeZone;



            this.Settings = Settings;



            this.ModifiedBy = ModifiedBy;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ShiftTradeNotification" /> class.
 /// </summary>
 /// <param name="WeekDate">The start date of the schedule with which this trade is associated.</param>
 /// <param name="TradeId">The ID of the shift trade.</param>
 /// <param name="OneSided">Whether this is a one sided shift trade.</param>
 /// <param name="NewState">The new state of the shift trade, null if there was no change.</param>
 /// <param name="InitiatingUser">The user who initiated the shift trade.</param>
 /// <param name="InitiatingShiftDate">The start date and time of the initiating shift. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="ReceivingUser">The user on the receiving side of this shift trade (null if not matched).</param>
 /// <param name="ReceivingShiftDate">The start date and time of the receiving shift (null if not matched or if one-sided. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 public ShiftTradeNotification(string WeekDate = null, string TradeId = null, bool?OneSided = null, NewStateEnum?NewState = null, UserReference InitiatingUser = null, DateTime?InitiatingShiftDate = null, UserReference ReceivingUser = null, DateTime?ReceivingShiftDate = null)
 {
     this.WeekDate            = WeekDate;
     this.TradeId             = TradeId;
     this.OneSided            = OneSided;
     this.NewState            = NewState;
     this.InitiatingUser      = InitiatingUser;
     this.InitiatingShiftDate = InitiatingShiftDate;
     this.ReceivingUser       = ReceivingUser;
     this.ReceivingShiftDate  = ReceivingShiftDate;
 }
示例#22
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BuAgentScheduleSearchResponse" /> class.
 /// </summary>
 /// <param name="User">The user to whom this agent schedule applies.</param>
 /// <param name="Shifts">The shift definitions for this agent schedule.</param>
 /// <param name="FullDayTimeOffMarkers">Full day time off markers which apply to this agent schedule.</param>
 public BuAgentScheduleSearchResponse(UserReference User = null, List <BuAgentScheduleShift> Shifts = null, List <BuFullDayTimeOffMarker> FullDayTimeOffMarkers = null)
 {
     this.User   = User;
     this.Shifts = Shifts;
     this.FullDayTimeOffMarkers = FullDayTimeOffMarkers;
 }
示例#23
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UnscheduledAgentWarning" /> class.
 /// </summary>
 /// <param name="Agent">The agent for which this warning applies.</param>
 /// <param name="UnscheduledReason">The reason this agent was not scheduled.</param>
 public UnscheduledAgentWarning(UserReference Agent = null, UnscheduledReasonEnum?UnscheduledReason = null)
 {
     this.Agent             = Agent;
     this.UnscheduledReason = UnscheduledReason;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="WfmVersionedEntityMetadata" /> class.
 /// </summary>
 /// <param name="Version">The version of the associated entity.  Used to prevent conflicts on concurrent edits (required).</param>
 /// <param name="ModifiedBy">The user who last modified the associated entity.</param>
 public WfmVersionedEntityMetadata(int?Version = null, UserReference ModifiedBy = null)
 {
     this.Version    = Version;
     this.ModifiedBy = ModifiedBy;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ShiftTradeResponse" /> class.
 /// </summary>
 /// <param name="Id">The ID of this shift trade.</param>
 /// <param name="WeekDate">The start week date of the associated schedule in yyyy-MM-dd format. Dates are represented as an ISO-8601 string. For example: yyyy-MM-dd.</param>
 /// <param name="Schedule">A reference to the associated schedule.</param>
 /// <param name="State">The state of this shift trade.</param>
 /// <param name="InitiatingUser">The user who initiated this trade.</param>
 /// <param name="InitiatingShiftId">The ID of the shift offered for trade by the initiating user.</param>
 /// <param name="InitiatingShiftStart">The start date/time of the shift being offered for trade. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="InitiatingShiftEnd">The end date/time of the shift being offered for trade. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="ReceivingUser">The user matching the trade, or if the state is not Matched, the user to whom the trade request was sent.</param>
 /// <param name="ReceivingShiftId">The ID of the shift being exchanged for the initiating shift, null if the receiving user is picking up a shift.</param>
 /// <param name="ReceivingShiftStart">The start date/time of the receiving shift. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="ReceivingShiftEnd">The end date/time of the receiving shift. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="Expiration">When this shift trade offer will expire if not matched or approved. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="OneSided">Whether this is a one-sided shift trade (e.g. the initiating user is not asking for a shift in return).</param>
 /// <param name="AcceptableIntervals">AcceptableIntervals.</param>
 /// <param name="ReviewedBy">The user who reviewed this shift trade.</param>
 /// <param name="ReviewedDate">The timestamp when this shift trade was reviewed. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="Metadata">Version data for this trade.</param>
 public ShiftTradeResponse(string Id = null, String WeekDate = null, BuScheduleReferenceForMuRoute Schedule = null, StateEnum?State = null, UserReference InitiatingUser = null, string InitiatingShiftId = null, DateTime?InitiatingShiftStart = null, DateTime?InitiatingShiftEnd = null, UserReference ReceivingUser = null, string ReceivingShiftId = null, DateTime?ReceivingShiftStart = null, DateTime?ReceivingShiftEnd = null, DateTime?Expiration = null, bool?OneSided = null, List <string> AcceptableIntervals = null, UserReference ReviewedBy = null, DateTime?ReviewedDate = null, WfmVersionedEntityMetadata Metadata = null)
 {
     this.Id                   = Id;
     this.WeekDate             = WeekDate;
     this.Schedule             = Schedule;
     this.State                = State;
     this.InitiatingUser       = InitiatingUser;
     this.InitiatingShiftId    = InitiatingShiftId;
     this.InitiatingShiftStart = InitiatingShiftStart;
     this.InitiatingShiftEnd   = InitiatingShiftEnd;
     this.ReceivingUser        = ReceivingUser;
     this.ReceivingShiftId     = ReceivingShiftId;
     this.ReceivingShiftStart  = ReceivingShiftStart;
     this.ReceivingShiftEnd    = ReceivingShiftEnd;
     this.Expiration           = Expiration;
     this.OneSided             = OneSided;
     this.AcceptableIntervals  = AcceptableIntervals;
     this.ReviewedBy           = ReviewedBy;
     this.ReviewedDate         = ReviewedDate;
     this.Metadata             = Metadata;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="DevelopmentActivity" /> class.
 /// </summary>
 /// <param name="Name">The name of the activity.</param>
 /// <param name="Type">The type of activity.</param>
 /// <param name="Status">The status of the activity.</param>
 /// <param name="DateDue">Due date for completion of the activity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z.</param>
 /// <param name="Facilitator">Facilitator of the activity.</param>
 /// <param name="Attendees">List of users attending the activity.</param>
 /// <param name="IsOverdue">Indicates if the activity is overdue.</param>
 public DevelopmentActivity(string Name = null, TypeEnum?Type = null, StatusEnum?Status = null, DateTime?DateDue = null, UserReference Facilitator = null, List <UserReference> Attendees = null, bool?IsOverdue = null)
 {
     this.Name        = Name;
     this.Type        = Type;
     this.Status      = Status;
     this.DateDue     = DateDue;
     this.Facilitator = Facilitator;
     this.Attendees   = Attendees;
     this.IsOverdue   = IsOverdue;
 }