Chỉ mục
Break
(thông báo)BreakRule
(thông báo)BudgetRequirement
(thông báo)CoverageRequirement
(thông báo)CoverageRequirement.RoleRequirement
(thông báo)CoverageRequirement.SkillRequirement
(thông báo)DemandCoverageViolation
(thông báo)Employee
(thông báo)EmployeeDemand
(thông báo)EmployeeSchedule
(thông báo)EmployeeSchedule.ShiftWithEvents
(thông báo)EmployeeSchedule.ShiftWithEvents.Event
(thông báo)EventTemplate
(thông báo)HourlyContract
(thông báo)HourlyContract.OvertimePeriod
(thông báo)Priority
(enum)ResourceConstraint
(thông báo)SchedulingConstraint
(thông báo)Shift
(thông báo)ShiftAssignment
(thông báo)ShiftGenerationSolutionStatus
(enum)ShiftPreference
(thông báo)ShiftRequest
(thông báo)ShiftTemplate
(thông báo)SolutionStatus
(enum)SolveParameters
(thông báo)SolverConfig
(thông báo)WorkStatus
(enum)
Nghỉ giải lao
Khoảng thời gian một nhân viên làm gián đoạn công việc của mình trong ca làm việc.
Trường | |
---|---|
start_date_time |
Thời gian bắt đầu giờ nghỉ. |
duration_minutes |
Thời lượng ngắt tính bằng phút. |
BreakRule
Quy tắc xác định thời điểm nghỉ giải lao có thể bắt đầu trong một ca làm việc và thời lượng của nó. Danh sách tất cả điểm chèn quảng cáo có thể xảy ra được xem xét được xác định theo gia số rule_increment_minutes
. Ví dụ:nếu quy tắc ngắt đang lập mô hình cho giờ nghỉ 30 phút có thể bắt đầu từ 10:00 đến 11:00 và khoảng nghỉ quy tắc là 20 phút, thì danh sách các điểm chèn được xem xét là: [10:00, 10:30], [10:20, 10:50], [10:40, 11], [10:40:1, 11]
Trường | |
---|---|
earliest_start_time |
Thời gian bắt đầu sớm nhất của điểm chèn quảng cáo (bao gồm cả hai thời điểm này). Bạn chỉ có thể thiết lập |
latest_start_time |
Thời gian bắt đầu muộn nhất của điểm chèn quảng cáo (bao gồm cả hai thời điểm này). Bạn chỉ có thể thiết lập |
duration_minutes |
Thời lượng ngắt tính bằng phút. |
rule_increment_minutes |
[Không bắt buộc] Khoảng thời gian tăng dần (tính bằng phút) cho tất cả các điểm chèn quảng cáo có thể xem xét trong quy tắc chèn quảng cáo này. Nếu bạn không đặt chính sách này, giá trị mặc định sẽ là |
BudgetRequirement
Yêu cầu về ngân sách trong một khoảng thời gian nhất định.
Trường | |
---|---|
total_budget |
Tổng ngân sách trong khoảng thời gian đã cho. Bạn phải cung cấp tổng ngân sách nếu mức độ ưu tiên là Nếu bạn không đặt |
start_date_time |
Thời gian bắt đầu áp dụng ngân sách này. Nếu bạn không chỉ định thời gian bắt đầu, thì thời gian bắt đầu sẽ được đặt thành thời gian bắt đầu sớm nhất của tất cả các ca làm việc nhất định. |
end_date_time |
Thời gian kết thúc khi áp dụng ngân sách này. Nếu bạn không chỉ định thời gian kết thúc, thì thời gian kết thúc sẽ được đặt thành thời gian kết thúc muộn nhất của tất cả các ca làm việc nhất định. |
priority |
Mức độ ưu tiên để đáp ứng yêu cầu về ngân sách trong khoảng thời gian cụ thể. Mức độ ưu tiên mặc định là Xin lưu ý rằng nếu mức độ ưu tiên này cao hơn các mức độ ưu tiên khác của quy tắc ràng buộc và nếu |
CoverageRequirement
Yêu cầu về mức độ phù hợp xác định số lượng nhân viên cần thiết cho một nhóm vai trò và/hoặc kỹ năng trong một khoảng thời gian cụ thể và tại một địa điểm nhất định. Khoảng thời gian ngày tại một vị trí cụ thể không được trùng lặp. Ngoài ra, bạn có thể cung cấp danh sách mã ca làm việc thay vì khoảng thời gian và vị trí. Chỉ những nhân viên được chỉ định cho vai trò cụ thể (hoặc có kỹ năng cụ thể) mới có thể đáp ứng yêu cầu này.
Đối với một vai trò và/hoặc kỹ năng cụ thể, yêu cầu về mức độ phù hợp được đáp ứng khi có ít nhất target_employee_count
số nhân viên làm việc tại mọi thời điểm trong khoảng thời gian (hoặc mỗi ca làm việc trong shift_ids
). Ngược lại, yêu cầu về mức độ phù hợp sẽ bị vi phạm nếu tại bất kỳ thời điểm nào trong khoảng thời gian (hoặc bất kỳ ca làm việc nào trong shift_ids
) có ít hơn target_employee_count
số nhân viên làm việc trong khoảng thời gian đó. Số lượng nhân viên làm việc nhiều hơn target_employee_count
vẫn đáp ứng yêu cầu, nhưng người giải quyết đã giảm thiểu được tình trạng nhân sự quá nhiều.
Trường | |
---|---|
start_date_time |
Thời gian bắt đầu đối với yêu cầu về mức độ phù hợp (bao gồm). Nếu được đặt, |
end_date_time |
Thời gian kết thúc yêu cầu về mức độ phù hợp (không bao gồm). Nếu được đặt, |
location_id |
Vị trí mà nhân viên đang cần. |
shift_ids[] |
Nếu được đặt, các yêu cầu về vai trò và kỹ năng sẽ được áp dụng riêng cho mỗi mã ca làm việc trong danh sách này. Nếu shift_ids là giá trị không trống, thì |
role_requirements[] |
Số lượng nhân viên bắt buộc được chỉ định cho các vai trò đã chỉ định trong khoảng thời gian. Bạn phải cung cấp tối đa một |
skill_requirements[] |
Số lượng nhân viên cần thiết có các kỹ năng đã chỉ định được chỉ định làm việc theo ca trong khoảng thời gian làm việc. Bạn phải cung cấp tối đa một |
RoleRequirement
Số lượng nhân viên bắt buộc được chỉ định cho vai trò đã chỉ định trong khoảng thời gian.
Trường | |
---|---|
role_id |
Mã vai trò cho yêu cầu. |
target_employee_count |
Số lượng nhân viên mong muốn được chỉ định cho vai trò trong khoảng thời gian. |
priority |
Mức độ ưu tiên cho quy tắc ràng buộc yêu cầu này. Mức độ ưu tiên mặc định cho mọi quy tắc ràng buộc về tài nguyên là |
SkillRequirement
Số lượng nhân viên cần thiết làm việc trong khoảng thời gian làm việc và có kỹ năng được chỉ định.
Trường | |
---|---|
skill_id |
Mã kỹ năng cho yêu cầu. |
target_employee_count |
Số lượng nhân viên mong muốn có kỹ năng nhất định đang làm việc trong khoảng thời gian. |
priority |
Mức độ ưu tiên cho quy tắc ràng buộc yêu cầu này. Mức độ ưu tiên mặc định cho mọi quy tắc ràng buộc về tài nguyên là |
DemandCoverageViolation
Chỉ định lỗi vi phạm về mức độ phù hợp của nhu cầu trong khoảng thời gian nhất định. Nhu cầu của nhân viên là như nhau trong toàn bộ khoảng thời gian được chỉ định.
Trường | |
---|---|
start_date_time |
Ngày và giờ bắt đầu của khoảng thời gian theo nhu cầu (bao gồm cả ngày này). Giá trị này được chỉ định theo phút. |
end_date_time |
Ngày và giờ kết thúc của khoảng thời gian theo nhu cầu (không bao gồm). Giá trị này được chỉ định theo phút. |
coverage_violation |
Vi phạm mức độ phù hợp trong khoảng thời gian chỉ định. Giá trị dương cho biết nhu cầu bị vượt quá và giá trị âm cho biết nhu cầu không được khai thác. |
Nhân viên
Một nhân viên thuộc lực lượng lao động cần được lên lịch.
Trường | |
---|---|
id |
ID duy nhất được chỉ định cho nhân viên này. |
role_ids[] |
Mã vai trò mà nhân viên này có thể thực hiện. Phải có ít nhất một vai trò được chỉ định. Khi một nhân viên được chỉ định vào ca làm việc, họ cũng được chỉ định một vai trò duy nhất trong danh sách này. Nhân viên có thể được chỉ định cho các vai trò khác nhau trong khung thời gian lên lịch. |
skill_ids[] |
Mã kỹ năng mà nhân viên này sở hữu. Danh sách này có thể trống. Khi một nhân viên được phân công vào ca làm việc, họ sẽ sử dụng bất kỳ kỹ năng nào được liệt kê ở đây để đáp ứng các yêu cầu về kỹ năng trong suốt thời gian làm ca làm việc đó. |
shift_preferences[] |
Thay đổi lựa chọn ưu tiên của nhân viên này. Những ca làm việc được chỉ định ở đây thể hiện những ca làm việc mà nhân viên muốn được chỉ định trong khung thời gian lên lịch. Mã ca làm việc được chỉ định trong |
scheduling_constraints[] |
Danh sách các điều kiện ràng buộc về việc lên lịch đối với nhân viên này. Mức độ ưu tiên mặc định cho mỗi quy tắc ràng buộc trong số này là |
resource_constraints[] |
Bạn có thể thêm mọi điều kiện ràng buộc khác về việc lập lịch biểu không được chỉ định trong |
shift_requests[] |
Danh sách các yêu cầu chuyển ca cho nhân viên. Yêu cầu có thể là để chỉ định hoặc không chỉ định cho một nhân viên vào các ca làm việc cụ thể. Mọi hoạt động chỉ định lịch biểu cố định cho nhân viên đều có thể được biểu thị bằng |
hourly_contract |
Hợp đồng xác định mức lương chính xác và làm thêm giờ cho nhân viên. |
EmployeeDemand
Chỉ định số lượng nhân viên cần thiết để đáp ứng nhu cầu trong khoảng thời gian DateTime đã cho.
Trường | |
---|---|
start_date_time |
Bắt đầu khoảng thời gian cho nhu cầu đã cho (bao gồm cả hai giá trị này). Các giá trị này được đọc xuống phút; giây và tất cả các đơn vị nhỏ hơn sẽ bị bỏ qua. |
end_date_time |
Kết thúc khoảng thời gian cho nhu cầu đã cho (không bao gồm). Các giá trị này được đọc xuống phút; giây và tất cả các đơn vị nhỏ hơn sẽ bị bỏ qua. |
employee_count |
Số lượng nhân viên cần thiết để đáp ứng nhu cầu cho khoảng thời gian này. |
EmployeeSchedule
Danh sách các ca làm việc theo thứ tự tương ứng với một ShiftTemplate
được chỉ định cho một số nhân viên.
Trường | |
---|---|
shift_template_id |
Mã của mẫu được dùng để tạo nhóm ca làm việc này. |
shifts[] |
Danh sách ca làm việc mà |
employee_count |
Số lượng nhân viên cần được chỉ định cho nhóm ca làm việc này để đáp ứng nhu cầu. |
ShiftWithEvents
Cho biết ngày bắt đầu và ngày kết thúc cùng với danh sách các sự kiện cố định của ca làm việc do người giải quyết tạo ra.
Trường | |
---|---|
start_date_time |
Ngày và giờ bắt đầu ca làm việc. Giá trị này được chỉ định theo phút; giây và các đơn vị nhỏ hơn không được cung cấp. |
end_date_time |
Ngày và giờ kết thúc ca làm việc. Giá trị này được chỉ định theo phút; giây và các đơn vị nhỏ hơn không được cung cấp. |
events[] |
Danh sách các sự kiện có trong lượt chuyển này, được ánh xạ chính xác đến và theo cùng thứ tự với |
Sự kiện
Chỉ định thời gian bắt đầu và kết thúc của một sự kiện cụ thể trong ca làm việc do trình giải quyết tạo ra.
Trường | |
---|---|
event_template_id |
Mã của mẫu được dùng để tạo sự kiện này. |
start_date_time |
Ngày và giờ bắt đầu sự kiện. Giá trị này được chỉ định theo phút; giây và các đơn vị nhỏ hơn không được cung cấp. |
end_date_time |
Ngày và giờ kết thúc sự kiện. Giá trị này được chỉ định theo phút; giây và các đơn vị nhỏ hơn không được cung cấp. |
EventTemplate
Mẫu chỉ định các quy tắc để tạo một sự kiện đơn lẻ xảy ra trong một ca làm việc. Sự kiện có thể đại diện cho một cuộc họp, giờ nghỉ giải lao, bữa trưa, v.v.
Trường | |
---|---|
id |
Mã nhận dạng duy nhất của mẫu này. |
minimum_minutes_after_shift_start |
Số phút tối thiểu sau khi bắt đầu ca làm việc mà sự kiện này có thể bắt đầu. |
maximum_minutes_after_shift_start |
Số phút tối đa sau khi bắt đầu ca làm việc mà sự kiện này có thể bắt đầu. |
duration_minutes |
Thời lượng cố định tính bằng phút của sự kiện này. |
start_time_increment_minutes |
Độ tăng thời gian (tính bằng phút) dùng để tạo tập hợp thời gian bắt đầu sự kiện có thể xảy ra từ |
HourlyContract
Chỉ định mức lương cơ bản theo giờ, chênh lệch giữa các mức giá và hệ số làm thêm giờ để xác định mức thù lao cho nhân viên. Xin lưu ý rằng các quy định ở mỗi nơi có thể yêu cầu cách tính tiền thù lao làm thêm giờ khác. Trình giải toán ước tính mức thù lao làm thêm giờ để giảm thiểu một proxy của tổng chi phí hoặc đáp ứng ngân sách (xem phần BudgetRequirement
). Công cụ này không nhằm mục đích tính toán bảng lương.
Trường | |
---|---|
base_hourly_rate |
Tiền lương khi làm việc không làm thêm giờ. Nếu nhân viên đó có nhiều mức giá, thì sự chênh lệch về mức phí sẽ được áp dụng tương ứng với mức giá cơ sở theo giờ này. Ngoài ra, nếu có nhiều mức giá, mức giá cơ bản theo giờ phải là mức tối thiểu của các mức giá này. |
hourly_rate_shift_differentials |
Mức chênh lệch giá theo giờ, được thanh toán ở đầu |
overtime_periods[] |
Danh sách tất cả các khoảng thời gian cần tính thời gian làm thêm giờ. Các khoảng thời gian này không được trùng lặp. |
OvertimePeriod
Khoảng thời gian cố định và định kỳ thường xuyên (thường là 168 giờ hoặc 7 khoảng thời gian 24 giờ liên tiếp) dùng để xác định số tiền thù lao làm thêm giờ. Mỗi giai đoạn có một hệ số làm thêm giờ (ví dụ: 1.5) so với base_hourly_rate
và giới hạn về số giờ được coi là công việc thông thường (không làm thêm giờ). Mọi ca làm việc trùng lặp với khoảng thời gian start_date_time
(bao gồm) và end_date_time
(không bao gồm) sẽ được tính vào tổng số giờ làm việc trong giai đoạn đó. Nếu sự trùng lặp là một phần, thì chỉ những giờ chồng chéo được tính.
Trường | |
---|---|
overtime_multiplier |
Hệ số để tính tỷ lệ làm thêm giờ theo giờ (phải lớn hơn hoặc bằng 1). Mức làm thêm giờ theo giờ thường được tính là |
start_date_time |
Thời gian bắt đầu cho hiệp phụ. Nếu một ca làm việc trùng với thời gian này, thì số giờ của ca làm việc đó sẽ được tính từ |
end_date_time |
Thời gian kết thúc trong thời gian thêm giờ. Nếu một ca làm việc trùng với thời gian này, thì số giờ của ca làm việc đó sẽ được tính tối đa |
maximum_regular_hours |
Số giờ làm việc tối đa được trả theo mức phí thông thường (không làm thêm giờ). Số lượng này phải là số dương. |
Mức độ ưu tiên
Mức độ ưu tiên cho mọi ràng buộc trong lịch làm việc của nhân viên hoặc các yêu cầu về bảo hiểm. Các thuộc tính này bao gồm SchedulingConstraint
, ResourceConstraint
, ShiftRequest
và CoverageRequirement
. Do có thể có các điều kiện ràng buộc xung đột, nên không phải lúc nào cũng có thể đáp ứng mọi điều kiện ràng buộc. Do đó, mỗi loại quy tắc ràng buộc đều có một mức độ ưu tiên (do người dùng đặt hoặc theo mặc định) để thông báo cho người giải quyết về tầm quan trọng tương đối của mọi quy tắc ràng buộc được đưa ra trong một lịch biểu hoàn chỉnh.
Enum | |
---|---|
PRIORITY_UNSPECIFIED |
Mức độ ưu tiên không xác định. |
PRIORITY_LOW |
Mức độ ưu tiên thấp nhất. Các quy tắc ràng buộc có mức độ ưu tiên này không quan trọng bằng các quy tắc ràng buộc khác. Các mô-đun này là những người đầu tiên được xem xét vi phạm nếu không tìm thấy giải pháp khả thi. |
PRIORITY_MEDIUM |
Mức độ ưu tiên trung bình. Quy tắc ràng buộc có mức độ ưu tiên này quan trọng hơn quy tắc ràng buộc có mức độ ưu tiên PRIORITY_LOW , nhưng không quan trọng bằng quy tắc ràng buộc có mức độ ưu tiên PRIORITY_HIGH . Nếu không tìm thấy giải pháp khả thi sau khi nới lỏng tất cả quy tắc ràng buộc với mức độ ưu tiên PRIORITY_LOW , thì các quy tắc ràng buộc có mức độ ưu tiên PRIORITY_MEDIUM sẽ được xem xét tiếp theo nếu vi phạm. |
PRIORITY_HIGH |
Mức độ ưu tiên cao nhất. Các hạn chế với mức độ ưu tiên này là quan trọng nhất. Đây là lỗi vi phạm cuối cùng nếu không tìm thấy giải pháp khả thi sau khi nới lỏng các hạn chế đối với các mức độ ưu tiên thấp hơn. |
PRIORITY_MANDATORY |
Mức độ ưu tiên thể hiện những nội dung mà trình giải toán không thể vi phạm. Nếu trình giải trả về SolutionStatus.INFEASIBLE , thì có thể là do có quá nhiều quy tắc hạn chế đối với PRIORITY_MANDATORY . |
ResourceConstraint
Quy tắc ràng buộc chung giới hạn số lượng của một "tài nguyên" nhất định mà nhân viên sử dụng. Đây là phiên bản trừu tượng của SchedulingConstraint
cụ thể hơn và linh hoạt hơn cho người dùng. Thay vào đó, bạn có thể chỉ định nhiều quy tắc ràng buộc về việc lập lịch trong SchedulingConstraint.type
bằng thông báo này.
Trường | |
---|---|
priority |
Mức độ ưu tiên của quy tắc ràng buộc tài nguyên này. Mức độ ưu tiên mặc định cho mọi quy tắc ràng buộc về tài nguyên là |
resource_usages |
Lượng tài nguyên mà các ca sử dụng. Ví dụ: nếu ràng buộc này áp dụng cho số giờ tối thiểu và tối đa mà một nhân viên làm việc trong một tuần cụ thể, thì bản đồ này sẽ chứa các ca làm việc trong tuần đó và thời lượng của mỗi ca làm việc theo giờ. |
minimum_resource_usage |
Mức sử dụng tài nguyên tối thiểu để đáp ứng một quy tắc ràng buộc tài nguyên. |
maximum_resource_usage |
Mức sử dụng tài nguyên tối đa cho một quy tắc ràng buộc tài nguyên cần đáp ứng. |
SchedulingConstraint
Ràng buộc cụ thể về việc lên lịch cho một nhân viên cụ thể. Quy tắc ràng buộc đã chỉ định chỉ được áp dụng trong khoảng thời gian [start_date_time,
end_date_time)
nhất định.
Trường | |
---|---|
priority |
Mức độ ưu tiên cho quy tắc ràng buộc về việc lập lịch này. Mức độ ưu tiên mặc định cho tất cả quy tắc ràng buộc về việc lập lịch là |
start_date_time |
Thời gian bắt đầu khi điều kiện ràng buộc về lịch biểu này được áp dụng (bao gồm cả thời gian này). |
end_date_time |
Thời gian kết thúc khi áp dụng giới hạn lập lịch này (loại trừ). |
Trường kết hợp type . Loại quy tắc ràng buộc đang được chỉ định. Mỗi quy tắc ràng buộc chỉ được áp dụng trong khoảng thời gian đã chỉ định ở trên. type chỉ có thể là một trong những trạng thái sau đây: |
|
minimum_minutes |
Số phút tối thiểu mà nhân viên có thể làm việc. Nếu nhân viên được chỉ định làm ca trùng lặp (hoàn toàn hoặc một phần) với khoảng thời gian, thì số phút mà ca làm việc đó trùng với khoảng thời gian sẽ được tính vào số lượng này. |
maximum_minutes |
Số phút tối đa mà nhân viên có thể làm việc trong khung thời gian. Nếu nhân viên được chỉ định làm ca trùng lặp (hoàn toàn hoặc một phần) với khoảng thời gian, thì số phút mà ca làm việc đó trùng với khoảng thời gian sẽ được tính vào số lượng này. |
minimum_consecutive_work_days |
Số ngày tối thiểu liên tục mà nhân viên có thể làm việc. Một nhân viên làm việc vào một ngày cụ thể nếu họ được giao ca làm việc bắt đầu vào chính ngày đó. Mọi ca làm việc mà nhân viên được chỉ định bắt đầu trong khung thời gian đều được tính vào tổng số này. |
maximum_consecutive_work_days |
Số ngày liên tiếp tối đa mà nhân viên có thể làm việc. Một nhân viên làm việc vào một ngày cụ thể nếu họ được giao ca làm việc bắt đầu vào chính ngày đó. Mọi ca làm việc mà nhân viên được chỉ định bắt đầu trong khung thời gian đều được tính vào tổng số này. |
minimum_shift_count |
Số ca tối thiểu mà nhân viên có thể làm việc. Mọi ca làm việc mà nhân viên được chỉ định trùng lặp hoàn toàn với khung thời gian đều được tính vào giá trị này. |
maximum_shift_count |
Số ca làm việc tối đa mà nhân viên có thể làm việc. Mọi ca làm việc mà nhân viên được chỉ định trùng lặp hoàn toàn với khung thời gian đều được tính vào giá trị này. |
minimum_rest_minutes |
Số phút tối thiểu mà nhân viên phải nghỉ ngơi sau khi kết thúc một ca làm việc trước khi được chỉ định vào ca làm việc khác. Quy tắc ràng buộc này áp dụng cho mọi cặp ca chuyển có đầy đủ trong [ |
Shift
Ca làm việc chỉ định một khoảng thời gian cố định mà nhân viên có thể làm việc.
Trường | |
---|---|
id |
Mã nhận dạng duy nhất được chỉ định cho ca làm việc này. |
location_id |
Mã vị trí nơi thực hiện thay đổi này. Bạn có thể để trống trường này. |
start_date_time |
Thời gian bắt đầu ca làm việc (bao gồm cả ngày này). |
end_date_time |
Thời gian kết thúc ca làm việc (không bao gồm). Hiện tại, trình giải quyết chỉ chấp nhận những bài làm có thời lượng dưới 24 giờ. |
break_rules[] |
Danh sách các quy tắc chèn xảy ra trong quá trình chuyển. Nhân viên làm việc này được chỉ định nghỉ giải lao theo |
ShiftAssignment
Một nhân viên để chuyển đổi vai trò chỉ định.
Trường | |
---|---|
employee_id |
Mã nhân viên đang được chỉ định. |
shift_id |
Mã ca làm việc được chỉ định cho nhân viên. |
role_id |
Mã vai trò mà nhân viên được chỉ định cho ca làm việc. |
breaks[] |
Danh sách các giờ nghỉ giải lao cho việc chỉ định ca làm việc này. |
ShiftGenerationSolutionStatus
Trạng thái giải pháp được đưa ra trong câu trả lời của trình giải quyết.
Enum | |
---|---|
SHIFT_GENERATION_SOLUTION_STATUS_UNSPECIFIED |
Trạng thái chưa xác định của phản hồi. |
SHIFT_GENERATION_SOLVED |
Trình giải toán đã tìm ra lời giải trong giới hạn thời gian đưa ra. |
SHIFT_GENERATION_NOT_SOLVED |
Một vấn đề đã khiến trình giải quyết không tạo được ca làm việc. |
SHIFT_GENERATION_NOT_SOLVED_DEADLINE_EXCEEDED |
Không thể tạo ca làm việc để đáp ứng nhu cầu này trong khoảng thời gian đã cho. |
ShiftPreference
Lựa chọn ưu tiên dạng số cho một mã ca làm việc cụ thể.
Trường | |
---|---|
shift_id |
ID ca làm việc mà lựa chọn ưu tiên được chỉ định. |
preference |
Giá trị ưu tiên lớn hơn biểu thị sự dịch chuyển mong muốn hơn. |
ShiftRequest
Yêu cầu của nhân viên được chỉ định hoặc không được chỉ định vào các ca làm việc cụ thể.
Trường | |
---|---|
priority |
Mức độ ưu tiên của yêu cầu lên lịch này. Mức độ ưu tiên mặc định cho tất cả các yêu cầu lên lịch là |
shift_ids[] |
Mã chuyển của yêu cầu lên lịch. |
type |
Loại yêu cầu, ví dụ: liệu yêu cầu có được chỉ định hay không được chỉ định cho nhóm ca làm việc. |
ShiftTemplate
Mẫu chỉ định quy tắc tạo ca làm việc. Ca làm việc là một đơn vị công việc chỉ định thời gian bắt đầu, thời gian kết thúc và có thể chứa các sự kiện (chẳng hạn như bữa trưa, giờ nghỉ giải lao, v.v.). Một ca làm việc sẽ được gán một ngày cụ thể trong câu trả lời.
Trường | |
---|---|
id |
Mã nhận dạng duy nhất của mẫu này. |
earliest_start_time |
Thời điểm sớm nhất trong ngày mà quá trình chuyển có thể bắt đầu. Giá trị này được chỉ định bằng giờ và phút; giây và nano sẽ bị bỏ qua. |
latest_start_time |
Thời điểm muộn nhất trong ngày mà quá trình làm việc có thể bắt đầu. Giá trị này được chỉ định bằng giờ và phút; giây và nano sẽ bị bỏ qua. Nếu giá trị này nhỏ hơn |
duration_minutes |
Đã sửa thời lượng thay đổi do mẫu này tạo. |
start_time_increment_minutes |
Độ tăng thời gian (tính bằng phút) dùng để tạo tập hợp thời gian bắt đầu có thể có từ |
days_off_count_per_week |
Số ngày nghỉ mỗi tuần cố định. Nhân viên được nghỉ một ngày nếu không được phân vào ca làm việc bắt đầu vào ngày hôm đó. Một tuần có 7 ngày và bắt đầu vào Chủ Nhật. |
event_templates[] |
Quy tắc tạo sự kiện cho mỗi lượt chuyển. Chỉ một sự kiện sẽ được đưa vào mỗi ca thực hiện đối với mỗi Sự kiện được chỉ định. |
minimum_interevent_gap_minutes |
Số phút tối thiểu giữa thời điểm kết thúc một sự kiện và bắt đầu sự kiện tiếp theo. |
maximum_employee_count |
Số lượng nhân viên tối đa có thể được chỉ định cho tất cả các ca làm việc do mẫu này tạo. |
SolutionStatus
Trạng thái của lời giải (tức là một lịch biểu) được đưa ra trong câu trả lời của trình giải.
Enum | |
---|---|
SOLUTION_STATUS_UNSPECIFIED |
Trạng thái chưa xác định của phản hồi. |
FEASIBLE |
Lịch biểu được trả về có thể thực hiện được, nhưng cũng có thể không phải là lịch tối ưu. |
OPTIMAL |
Lịch biểu được trả về là lịch biểu tối ưu. |
INFEASIBLE |
Không có lịch biểu khả thi nào cho các điều kiện ràng buộc đã cho. Trình giải có thể trả về giá trị này nếu không đáp ứng được bất kỳ tập hợp con các quy tắc ràng buộc có mức độ ưu tiên PRIORITY_MANDATORY . |
NOT_SOLVED |
Không tìm thấy lịch biểu. |
NOT_SOLVED_DEADLINE_EXCEEDED |
Không tìm thấy lịch biểu trong giới hạn thời gian đã cho. |
SolveParameters
Các thông số kiểm soát việc giải quyết duy nhất cho vấn đề lên lịch ca làm việc.
Trường | |
---|---|
time_limit |
Thời gian tối đa mà người giải toán nên dành cho bài toán đó. Nếu bạn không đặt chính sách này, thì thời gian mặc định sẽ là 1 phút. Giá trị này không phải là giới hạn cố định và không tính đến chi phí liên lạc. Độ trễ dự kiến để giải quyết vấn đề có thể hơi vượt quá giá trị này. |
SolverConfig
Chỉ định các tham số bổ sung để giải bài tập Tạo ca làm việc.
Trường | |
---|---|
time_limit |
Thời gian tối đa mà người giải toán nên dành cho bài toán đó. Nếu bạn không đặt chính sách này, thì thời gian mặc định sẽ là 1 phút. Việc lựa chọn giới hạn thời gian phải phụ thuộc vào quy mô của vấn đề. Ví dụ: khi giải quyết thực thể 7 ngày với 2 Giá trị này không phải là giới hạn cố định và không tính đến chi phí liên lạc. Độ trễ dự kiến để giải quyết vấn đề có thể hơi vượt quá giá trị này. |
multi_day_schedule |
Nếu đúng, trình giải sẽ tạo các |
shift_events_can_change |
Nếu đúng, các |
WorkStatus
Liệu một nhân viên có đang làm việc hay không.
Enum | |
---|---|
WORK_STATUS_UNSPECIFIED |
Trạng thái công việc không xác định. |
STATUS_WORK |
Trạng thái đại diện cho một nhân viên đang làm việc. |
STATUS_NOT_WORK |
Trạng thái đại diện cho một nhân viên không làm việc. |