Class ActivityPasteInput

java.lang.Object
overit.geocallapp.wfm.scheduling.paste.event.ActivityPasteInput
All Implemented Interfaces:
Serializable

public class ActivityPasteInput extends Object implements Serializable
Input for the activity paste event. This event handles the complete process of:
  • Loading or creating an appointment for a work order operation
  • Creating or reusing an agenda
  • Scheduling the activity to a resource or team
The event supports both single resource and team scheduling, and can be used for both immediate scheduling and manual scheduling requests.
Since:
22.0
See Also:
  • Constructor Details

    • ActivityPasteInput

      public ActivityPasteInput()
  • Method Details

    • getWorkOrderOperationId

      public Long getWorkOrderOperationId()
      Gets the work order operation ID.
      Returns:
      the work order operation ID
    • setWorkOrderOperationId

      public void setWorkOrderOperationId(Long workOrderOperationId)
      Sets the work order operation ID.
      Parameters:
      workOrderOperationId - the work order operation ID to set
    • getActivityData

      public HashGetter getActivityData()
      Gets the activity data (optional). If provided, this HashGetter contains the complete work order operation data and will be used to create the appointment. If not provided, the data will be loaded from the database using the workOrderOperationId.
      Returns:
      the activity data
    • setActivityData

      public void setActivityData(HashGetter activityData)
      Sets the activity data.
      Parameters:
      activityData - the activity data to set
    • getForemanWorkshiftId

      public Long getForemanWorkshiftId()
      Gets the foreman/resource workshift ID.
      Returns:
      the foreman workshift ID
    • setForemanWorkshiftId

      public void setForemanWorkshiftId(Long foremanWorkshiftId)
      Sets the foreman/resource workshift ID.
      Parameters:
      foremanWorkshiftId - the foreman workshift ID to set
    • getAssistantWorkshiftIds

      public LongSet getAssistantWorkshiftIds()
      Gets the assistant workshift IDs (for team scheduling). If null or empty, this is a single resource scheduling.
      Returns:
      the assistant workshift IDs
    • setAssistantWorkshiftIds

      public void setAssistantWorkshiftIds(LongSet assistantWorkshiftIds)
      Sets the assistant workshift IDs.
      Parameters:
      assistantWorkshiftIds - the assistant workshift IDs to set
    • getSchedulingModelId

      public Long getSchedulingModelId()
      Gets the scheduling model ID. If null, the activity will be scheduled on the real plan.
      Returns:
      the scheduling model ID
    • setSchedulingModelId

      public void setSchedulingModelId(Long schedulingModelId)
      Sets the scheduling model ID.
      Parameters:
      schedulingModelId - the scheduling model ID to set
    • getOperationCenterId

      public Long getOperationCenterId()
      Gets the operation center ID.
      Returns:
      the operation center ID
    • setOperationCenterId

      public void setOperationCenterId(Long operationCenterId)
      Sets the operation center ID.
      Parameters:
      operationCenterId - the operation center ID to set
    • getUseTimeLimit

      public Boolean getUseTimeLimit()
      Gets whether to use time limit for real-time scheduling.
      Returns:
      true if time limit should be used
    • setUseTimeLimit

      public void setUseTimeLimit(Boolean useTimeLimit)
      Sets whether to use time limit for real-time scheduling.
      Parameters:
      useTimeLimit - true to use time limit
    • getTimeLimit

      public Date getTimeLimit()
      Gets the time limit for real-time scheduling. This is typically the current time plus a configured delta.
      Returns:
      the time limit
    • setTimeLimit

      public void setTimeLimit(Date timeLimit)
      Sets the time limit for real-time scheduling.
      Parameters:
      timeLimit - the time limit to set
    • getTeamStartTime

      public Date getTeamStartTime()
      Gets the team start time (for team scheduling). This ensures all team members start together when the last one arrives.
      Returns:
      the team start time
    • setTeamStartTime

      public void setTeamStartTime(Date teamStartTime)
      Sets the team start time.
      Parameters:
      teamStartTime - the team start time to set
    • getPasteBefore

      public Boolean getPasteBefore()
      Gets whether to paste before the reference activity. If true, paste before; if false, paste after.
      Returns:
      true to paste before
    • setPasteBefore

      public void setPasteBefore(Boolean pasteBefore)
      Sets whether to paste before the reference activity.
      Parameters:
      pasteBefore - true to paste before
    • getPasteReferenceActivityId

      public Long getPasteReferenceActivityId()
      Gets the reference activity ID for positioning. If provided, the new activity will be pasted before or after this activity.
      Returns:
      the reference activity ID
    • setPasteReferenceActivityId

      public void setPasteReferenceActivityId(Long pasteReferenceActivityId)
      Sets the reference activity ID for positioning.
      Parameters:
      pasteReferenceActivityId - the reference activity ID to set
    • getNoQuestions

      public Boolean getNoQuestions()
      Gets whether to skip user questions/confirmations.
      Returns:
      true to skip questions
    • setNoQuestions

      public void setNoQuestions(Boolean noQuestions)
      Sets whether to skip user questions/confirmations.
      Parameters:
      noQuestions - true to skip questions
    • getEncapsulatedCall

      public Boolean getEncapsulatedCall()
      Gets whether this is an encapsulated call. When true, certain validations may be skipped.
      Returns:
      true if encapsulated call
    • setEncapsulatedCall

      public void setEncapsulatedCall(Boolean encapsulatedCall)
      Sets whether this is an encapsulated call.
      Parameters:
      encapsulatedCall - true if encapsulated call