সূচক
-
Break
(বার্তা) -
BreakRule
(বার্তা) -
BudgetRequirement
(বার্তা) -
CoverageRequirement
(বার্তা) -
CoverageRequirement.RoleRequirement
(বার্তা) -
CoverageRequirement.SkillRequirement
(বার্তা) -
DemandCoverageViolation
(বার্তা) -
Employee
(বার্তা) -
EmployeeDemand
(বার্তা) -
EmployeeSchedule
(বার্তা) -
EmployeeSchedule.ShiftWithEvents
(বার্তা) -
EmployeeSchedule.ShiftWithEvents.Event
(বার্তা) -
EventTemplate
(বার্তা) -
HourlyContract
(বার্তা) -
HourlyContract.OvertimePeriod
(বার্তা) -
Priority
(enum) -
ResourceConstraint
(বার্তা) -
SchedulingConstraint
(বার্তা) -
Shift
(বার্তা) -
ShiftAssignment
(বার্তা) -
ShiftGenerationSolutionStatus
(এনাম) -
ShiftPreference
(বার্তা) -
ShiftRequest
(বার্তা) -
ShiftTemplate
(বার্তা) -
SolutionStatus
(enum) -
SolveParameters
(বার্তা) -
SolverConfig
(বার্তা) -
WorkStatus
(enum)
বিরতি
একটি সময়কাল যেখানে একজন কর্মচারী একটি শিফটের সময় তাদের কাজে বাধা দেয়।
ক্ষেত্র | |
---|---|
start_date_time | বিরতির শুরুর সময়। |
duration_minutes | মিনিটে বিরতির সময়কাল। |
BreakRule
একটি নিয়ম যা নির্ধারণ করে কখন বিরতি একটি শিফট এবং এর সময়কালের মধ্যে শুরু হতে পারে। বিবেচিত সমস্ত সম্ভাব্য বিরতির তালিকা rule_increment_minutes
বৃদ্ধিতে নির্ধারিত হয়। উদাহরণস্বরূপ, যদি একটি বিরতির নিয়ম একটি 30-মিনিটের বিরতির মডেলিং হয় যা 10:00 থেকে 11:00 এর মধ্যে শুরু হতে পারে এবং নিয়ম বৃদ্ধি 20 মিনিটের হয়, তাহলে বিবেচিত বিরতির তালিকা হল: [10:00, 10 :30], [10:20, 10:50], [10:40, 11:10], [11:00, 11:30]।
ক্ষেত্র | |
---|---|
earliest_start_time | বিরতির প্রথম শুরুর সময় (অন্তর্ভুক্ত)। শুধুমাত্র |
latest_start_time | বিরতির সর্বশেষ শুরুর সময় (অন্তর্ভুক্ত)। শুধুমাত্র |
duration_minutes | মিনিটে বিরতির সময়কাল। |
rule_increment_minutes | [ঐচ্ছিক] এই বিরতির নিয়মে বিবেচনা করা যেতে পারে এমন সমস্ত বিরতির জন্য মিনিটে সময় বৃদ্ধি। সেট করা না থাকলে, |
বাজেটের প্রয়োজনীয়তা
প্রদত্ত ব্যবধানের জন্য বাজেটের প্রয়োজনীয়তা।
ক্ষেত্র | |
---|---|
total_budget | প্রদত্ত ব্যবধানের জন্য মোট বাজেট। অগ্রাধিকার |
start_date_time | এই বাজেট কখন প্রযোজ্য হবে তার জন্য শুরুর সময়। যদি একটি শুরুর সময় নির্দিষ্ট করা না থাকে, তবে এটি সমস্ত প্রদত্ত শিফটের প্রথম দিকের শুরুর সময় হিসাবে সেট করা হয়৷ |
end_date_time | এই বাজেট কখন প্রযোজ্য হবে তার শেষ সময়। যদি একটি শেষ সময় নির্দিষ্ট করা না থাকে, তবে এটি সমস্ত প্রদত্ত শিফটের সর্বশেষ শেষ সময় হিসাবে সেট করা হয়৷ |
priority | নির্দিষ্ট সময় উইন্ডোতে বাজেটের প্রয়োজনীয়তা পূরণের জন্য অগ্রাধিকার স্তর। ডিফল্ট অগ্রাধিকার হল মনে রাখবেন যে যদি এই অগ্রাধিকারটি অন্যান্য সীমাবদ্ধতার অগ্রাধিকারের চেয়ে বেশি হয় এবং যদি |
কভারেজের প্রয়োজনীয়তা
একটি কভারেজ প্রয়োজনীয়তা নির্দিষ্ট সময় উইন্ডোতে এবং একটি নির্দিষ্ট অবস্থানে ভূমিকা এবং/অথবা দক্ষতার সেটের জন্য প্রয়োজনীয় কর্মচারীর সংখ্যা নির্দিষ্ট করে। একটি নির্দিষ্ট স্থানে তারিখ সময়ের ব্যবধান ওভারল্যাপ করতে পারে না। বিকল্পভাবে, একটি সময় উইন্ডো এবং অবস্থানের পরিবর্তে শিফট আইডিগুলির একটি তালিকা প্রদান করা যেতে পারে। শুধুমাত্র যে কর্মচারীদের নির্দিষ্ট ভূমিকার জন্য নিযুক্ত করা যেতে পারে (বা নির্দিষ্ট দক্ষতার অধিকারী) তারা এই প্রয়োজনীয়তা পূরণ করতে পারে।
একটি প্রদত্ত ভূমিকা এবং/অথবা দক্ষতার জন্য, কভারেজের প্রয়োজনীয়তা পূরণ করা হয় যখন টাইম উইন্ডোতে (অথবা shift_ids
এ প্রতিটি শিফটের জন্য) কমপক্ষে target_employee_count
সংখ্যক কর্মচারী কাজ করে। বিপরীতে, কভারেজের প্রয়োজনীয়তা লঙ্ঘন করা হয় যদি টাইম উইন্ডোতে (অথবা shift_ids
এর যেকোনো পরিবর্তনের জন্য), টাইম উইন্ডোতে কর্মরত কর্মীর target_employee_count
সংখ্যার চেয়ে কম থাকে। target_employee_count
চেয়ে বেশি কর্মরত কর্মচারী এখনও প্রয়োজনীয়তা পূরণ করে, কিন্তু অত্যধিক স্টাফিং সমাধানকারী দ্বারা হ্রাস করা হয়।
ক্ষেত্র | |
---|---|
start_date_time | কভারেজ প্রয়োজনীয়তার জন্য শুরুর সময় (অন্তর্ভুক্ত)। সেট করা থাকলে, |
end_date_time | কভারেজ প্রয়োজনীয়তার জন্য শেষ সময় (একচেটিয়া)। সেট করা থাকলে, |
location_id | যে অবস্থানে কর্মীদের প্রয়োজন। |
shift_ids[] | সেট করা থাকলে, এই তালিকার প্রতিটি শিফট আইডিতে ভূমিকা এবং দক্ষতার প্রয়োজনীয়তা পৃথকভাবে প্রয়োগ করা হয়। যদি shift_ids খালি না থাকে, তাহলে |
role_requirements[] | টাইম উইন্ডোর সময় নির্দিষ্ট ভূমিকার জন্য প্রয়োজনীয় সংখ্যক কর্মচারী নিয়োগ করা হবে। প্রতিটি রোল আইডির জন্য সর্বাধিক একটি |
skill_requirements[] | নির্দিষ্ট দক্ষতা সহ প্রয়োজনীয় সংখ্যক কর্মচারী যা সময় উইন্ডোর সময় শিফটে বরাদ্দ করা হয়। প্রতিটি দক্ষতা আইডির জন্য সর্বাধিক একটি |
ভূমিকার প্রয়োজনীয়তা
টাইম উইন্ডোর সময় নির্দিষ্ট ভূমিকার জন্য প্রয়োজনীয় সংখ্যক কর্মচারী নিয়োগ করা হবে।
ক্ষেত্র | |
---|---|
role_id | প্রয়োজনের জন্য ভূমিকা আইডি। |
target_employee_count | সময় উইন্ডোর সময় ভূমিকার জন্য নির্ধারিত সংখ্যক কর্মচারী। |
priority | এই প্রয়োজনীয়তা সীমাবদ্ধতার জন্য অগ্রাধিকার স্তর। সমস্ত সংস্থান সীমাবদ্ধতার জন্য ডিফল্ট অগ্রাধিকার হল |
দক্ষতার প্রয়োজনীয়তা
প্রয়োজনীয় সংখ্যক কর্মচারী যারা সময় উইন্ডোতে কাজ করছেন এবং নির্দিষ্ট দক্ষতার অধিকারী।
ক্ষেত্র | |
---|---|
skill_id | প্রয়োজনের জন্য স্কিল আইডি। |
target_employee_count | প্রদত্ত দক্ষতা সহ কাঙ্ক্ষিত সংখ্যক কর্মচারী যারা সময় উইন্ডোতে কাজ করছেন। |
priority | এই প্রয়োজনীয়তা সীমাবদ্ধতার জন্য অগ্রাধিকার স্তর। সমস্ত সংস্থান সীমাবদ্ধতার জন্য ডিফল্ট অগ্রাধিকার হল |
চাহিদা কভারেজ লঙ্ঘন
প্রদত্ত ব্যবধানের জন্য চাহিদা কভারেজ লঙ্ঘন নির্দিষ্ট করে। পুরো নির্দিষ্ট ব্যবধানে কর্মচারীর চাহিদা একই থাকে।
ক্ষেত্র | |
---|---|
start_date_time | চাহিদা ব্যবধানের শুরুর তারিখ এবং সময় (অন্তর্ভুক্ত)। এই মানটি মিনিট পর্যন্ত নির্দিষ্ট করা হয়েছে। |
end_date_time | চাহিদা ব্যবধানের শেষ তারিখ এবং সময় (একচেটিয়া)। এই মানটি মিনিট পর্যন্ত নির্দিষ্ট করা হয়েছে। |
coverage_violation | নির্দিষ্ট ব্যবধানে কভারেজ লঙ্ঘন। একটি ইতিবাচক মান নির্দেশ করে যে চাহিদা ওভারকভার করা হয়েছে, এবং একটি নেতিবাচক মান নির্দেশ করে যে চাহিদা আড়াল করা হয়েছে। |
কর্মচারী
কর্মশক্তি থেকে একজন কর্মচারীকে নির্ধারিত করা হবে।
ক্ষেত্র | |
---|---|
id | এই কর্মচারীকে অনন্য আইডি বরাদ্দ করা হয়েছে। |
role_ids[] | ভূমিকা আইডি যা এই কর্মচারী সম্পাদন করতে পারেন। অন্তত একটি ভূমিকা নির্দিষ্ট করা আবশ্যক. যখন একজন কর্মচারীকে একটি শিফটে নিয়োগ করা হয়, তখন তাদের এই তালিকা থেকে একটি একক ভূমিকাতেও বরাদ্দ করা হয়। শিডিউলিং উইন্ডোর সময় কর্মচারীকে বিভিন্ন ভূমিকাতে নিয়োগ করা হতে পারে। |
skill_ids[] | এই কর্মচারীর স্কিল আইডি আছে। এই তালিকা খালি হতে পারে. যখন একজন কর্মচারীকে একটি শিফটে নিযুক্ত করা হয়, তখন তারা নির্ধারিত শিফটের সময়কাল জুড়ে দক্ষতার প্রয়োজনীয়তাগুলি কভার করার জন্য এখানে তালিকাভুক্ত দক্ষতার যেকোনো উপসেট ব্যবহার করে। |
shift_preferences[] | এই কর্মচারীর পছন্দ পরিবর্তন করুন। এখানে নির্দিষ্ট করা শিফটগুলি সেই শিফটগুলিকে প্রতিনিধিত্ব করে যা কর্মচারী শিডিউলিং উইন্ডোর সময় বরাদ্দ করা পছন্দ করবে৷ |
scheduling_constraints[] | এই কর্মচারীর জন্য সময় নির্ধারণের সীমাবদ্ধতার তালিকা। এই সীমাবদ্ধতার প্রতিটির জন্য ডিফল্ট অগ্রাধিকার স্তর হল |
resource_constraints[] | |
shift_requests[] | কর্মচারীর জন্য শিফট অনুরোধের তালিকা। অনুরোধটি হতে পারে একজন কর্মচারীকে নিয়োগের জন্য বা নির্দিষ্ট শিফটে বরাদ্দ না করার জন্য। কর্মচারীর জন্য যে কোনো নির্দিষ্ট সময়সূচী নিয়োগ অগ্রাধিকার |
hourly_contract | চুক্তি যা কর্মচারীর জন্য নিয়মিত এবং ওভারটাইম ঘন্টার হার নির্দিষ্ট করে। |
কর্মচারীর চাহিদা
প্রদত্ত তারিখ সময়ের ব্যবধানে চাহিদা পূরণের জন্য প্রয়োজনীয় কর্মচারীর সংখ্যা নির্দিষ্ট করে৷
ক্ষেত্র | |
---|---|
start_date_time | প্রদত্ত চাহিদার জন্য সময়ের ব্যবধানের শুরু (অন্তর্ভুক্ত)। এই মানগুলি মিনিটে পড়া হয়; সেকেন্ড এবং সমস্ত ছোট ইউনিট উপেক্ষা করা হয়। |
end_date_time | প্রদত্ত চাহিদার জন্য সময়ের ব্যবধানের সমাপ্তি (একচেটিয়া)। এই মানগুলি মিনিটে পড়া হয়; সেকেন্ড এবং সমস্ত ছোট ইউনিট উপেক্ষা করা হয়। |
employee_count | এই ব্যবধানের চাহিদা পূরণের জন্য প্রয়োজনীয় কর্মচারীর সংখ্যা। |
কর্মচারী শিডিউল
একটি একক ShiftTemplate
সাথে সম্পর্কিত শিফটের একটি আদেশকৃত তালিকা যা অনেক সংখ্যক কর্মচারীকে বরাদ্দ করা হবে।
ক্ষেত্র | |
---|---|
shift_template_id | টেমপ্লেটের আইডি যা শিফটের এই সেট তৈরি করতে ব্যবহৃত হয়েছিল। |
shifts[] | যেসব শিফটে |
employee_count | চাহিদা পূরণের জন্য শিফটের এই সেটে নিয়োগ করা উচিত এমন কর্মচারীর সংখ্যা। |
ShiftWithEvents
সমাধানকারীর দ্বারা উত্পন্ন একটি স্থানান্তরের নির্দিষ্ট ইভেন্টের তালিকা সহ শুরু এবং শেষের তারিখ নির্দিষ্ট করে৷
ক্ষেত্র | |
---|---|
start_date_time | শিফট শুরুর তারিখ এবং সময়। এই মানটি মিনিটে নির্দিষ্ট করা হয়েছে; সেকেন্ড এবং ছোট ইউনিট দেওয়া হয় না। |
end_date_time | শিফটের শেষ তারিখ এবং সময়। এই মানটি মিনিটে নির্দিষ্ট করা হয়েছে; সেকেন্ড এবং ছোট ইউনিট দেওয়া হয় না। |
events[] | এই শিফটে অন্তর্ভুক্ত ইভেন্টের তালিকা, ঠিক ম্যাপ করা হয়েছে, এবং একই ক্রমে, |
ঘটনা
সমাধানকারী দ্বারা উত্পন্ন একটি শিফটে একটি নির্দিষ্ট ইভেন্টের শুরু এবং শেষের তারিখ নির্দিষ্ট করে৷
ক্ষেত্র | |
---|---|
event_template_id | এই ইভেন্ট তৈরি করতে ব্যবহৃত টেমপ্লেটের আইডি। |
start_date_time | অনুষ্ঠান শুরুর তারিখ এবং সময়। এই মানটি মিনিটে নির্দিষ্ট করা হয়েছে; সেকেন্ড এবং ছোট ইউনিট দেওয়া হয় না। |
end_date_time | ইভেন্টের শেষ তারিখ এবং সময়। এই মানটি মিনিটে নির্দিষ্ট করা হয়েছে; সেকেন্ড এবং ছোট ইউনিট দেওয়া হয় না। |
ইভেন্ট টেমপ্লেট
একটি শিফটের সময় ঘটে এমন একটি একক ইভেন্ট তৈরি করার নিয়ম নির্দিষ্ট করে টেমপ্লেট৷ একটি ইভেন্ট একটি মিটিং, বিরতি, মধ্যাহ্নভোজ ইত্যাদি প্রতিনিধিত্ব করতে পারে।
ক্ষেত্র | |
---|---|
id | এই টেমপ্লেটের অনন্য আইডি। |
minimum_minutes_after_shift_start | এই ইভেন্টটি শুরু হতে পারে এমন একটি শিফট শুরু হওয়ার পর ন্যূনতম সংখ্যক মিনিট। |
maximum_minutes_after_shift_start | এই ইভেন্টটি শুরু হতে পারে এমন একটি শিফট শুরু হওয়ার পর সর্বাধিক সংখ্যক মিনিট৷ |
duration_minutes | এই ইভেন্টের মিনিটের মধ্যে নির্দিষ্ট সময়কাল। |
start_time_increment_minutes | |
আওয়ারলি কন্ট্রাক্ট
একজন কর্মচারীর জন্য ক্ষতিপূরণ নির্ধারণ করতে একটি বেস ঘন্টায় হার, হারের পার্থক্য এবং ওভারটাইম গুণক নির্দিষ্ট করে। বিভিন্ন জায়গায় নোট প্রবিধানের জন্য ওভারটাইম ক্ষতিপূরণের আলাদা গণনার প্রয়োজন হতে পারে। সমাধানকারী ওভারটাইম ক্ষতিপূরণ আনুমানিক হয় মোট খরচের একটি প্রক্সি কমাতে বা একটি বাজেট পূরণ করতে (দেখুন BudgetRequirement
)। বেতন গণনা করার একটি হাতিয়ার হিসেবে এটির উদ্দেশ্য নয়।
ক্ষেত্র | |
---|---|
base_hourly_rate | ওভারটাইম ছাড়া এক ঘন্টা কাজ করার জন্য ক্ষতিপূরণ। যদি একাধিক হার কর্মচারীর জন্য প্রযোজ্য হয়, তাহলে এই বেস ঘন্টায় হারের তুলনায় হারের পার্থক্য প্রয়োগ করা হয়। উপরন্তু, যদি একাধিক হার থাকে, তাহলে বেস ঘন্টার হার এই হারগুলির সর্বনিম্ন হওয়া উচিত। |
hourly_rate_shift_differentials | |
overtime_periods[] | যে সমস্ত সময়ের জন্য ওভারটাইম গণনা করতে হবে তার একটি তালিকা। এই সময়সীমা ওভারল্যাপ করা উচিত নয়. |
ওভারটাইম পিরিয়ড
একটি নির্দিষ্ট এবং নিয়মিত পুনরাবৃত্ত সময়কাল (সাধারণত 168 ঘন্টা বা সাতটি পরপর 24-ঘন্টা সময়কাল) যা ওভারটাইম ক্ষতিপূরণের পরিমাণ নির্ধারণ করতে ব্যবহৃত হয়। প্রতিটি পিরিয়ডের একটি ওভারটাইম গুণক (যেমন, 1.5) base_hourly_rate
সাপেক্ষে এবং ঘন্টার সংখ্যার একটি সীমা থাকে যা নিয়মিত (অ-ওভারটাইম) কাজ বলে বিবেচিত হয়। start_date_time
(অন্তর্ভুক্ত) এবং end_date_time
(এক্সক্লুসিভ) সময় উইন্ডোর সাথে ওভারল্যাপ করা যেকোন শিফটকে সময়ের মধ্যে কাজ করা মোট ঘন্টার মধ্যে গণনা করা হয়। ওভারল্যাপ আংশিক হলে, শুধুমাত্র ওভারল্যাপ করার সময় গণনা করা হয়।
ক্ষেত্র | |
---|---|
overtime_multiplier | ওভারটাইম ঘন্টার হার গণনা করতে গুণক (1.0 এর বেশি বা সমান হতে হবে)। ওভারটাইম ঘন্টার হার সাধারণত |
start_date_time | ওভারটাইম সময়ের জন্য শুরু সময়। যদি এই সময় একটি শিফট ওভারল্যাপ হয়, তাহলে এই ধরনের একটি শিফটের ঘন্টা |
end_date_time | ওভারটাইম সময়ের জন্য শেষ সময়। যদি এই সময় একটি শিফট ওভারল্যাপ হয়, তাহলে এই ধরনের শিফটের সময় |
maximum_regular_hours | নিয়মিত (অ-ওভারটাইম) হারে প্রদান করা কর্মঘন্টার সর্বাধিক সংখ্যা। এই পরিমাণ ইতিবাচক হতে হবে। |
অগ্রাধিকার
একজন কর্মচারীর সময়সূচী বা কভারেজ প্রয়োজনীয়তার উপর কোন বাধার জন্য অগ্রাধিকার স্তর। এর মধ্যে রয়েছে SchedulingConstraint
, ResourceConstraint
, ShiftRequest
, এবং CoverageRequirement
। যেহেতু পরস্পরবিরোধী সীমাবদ্ধতা থাকতে পারে, তাই প্রতিটি সীমাবদ্ধতা পূরণ করা সবসময় সম্ভব হয় না। যেমন, প্রতিটি ধরনের সীমাবদ্ধতার একটি অগ্রাধিকার রয়েছে (ব্যবহারকারী বা ডিফল্ট দ্বারা প্রদত্ত) যা সমাধানকারীকে একটি সম্পূর্ণ সময়সূচীতে দেওয়া সমস্ত সীমাবদ্ধতার আপেক্ষিক গুরুত্ব সম্পর্কে অবহিত করে।
Enums | |
---|---|
PRIORITY_UNSPECIFIED | অজানা অগ্রাধিকার স্তর। |
PRIORITY_LOW | সর্বনিম্ন অগ্রাধিকার স্তর। এই অগ্রাধিকারের সাথে সীমাবদ্ধতাগুলি অন্যান্য সীমাবদ্ধতার চেয়ে কম গুরুত্বপূর্ণ। একটি সম্ভাব্য সমাধান খুঁজে না পাওয়া গেলে তারাই প্রথম লঙ্ঘনের জন্য বিবেচিত হবে। |
PRIORITY_MEDIUM | অগ্রাধিকার স্তরের মাধ্যম। এই অগ্রাধিকারের সীমাবদ্ধতাগুলি PRIORITY_LOW অগ্রাধিকারের সীমাবদ্ধতার চেয়ে বেশি গুরুত্বপূর্ণ কিন্তু PRIORITY_HIGH অগ্রাধিকারের সীমাবদ্ধতার চেয়ে কম গুরুত্বপূর্ণ৷ PRIORITY_LOW অগ্রাধিকার সহ সমস্ত সীমাবদ্ধতা শিথিল করার পরে যদি একটি সম্ভাব্য সমাধান খুঁজে না পাওয়া যায়, তাহলে লঙ্ঘনের জন্য পরবর্তী PRIORITY_MEDIUM অগ্রাধিকারের সীমাবদ্ধতাগুলি বিবেচনা করা হয়৷ |
PRIORITY_HIGH | সর্বোচ্চ অগ্রাধিকার স্তর। এই অগ্রাধিকার স্তরের সাথে সীমাবদ্ধতাগুলি সবচেয়ে গুরুত্বপূর্ণ। নিম্ন অগ্রাধিকার স্তরের সীমাবদ্ধতাগুলি শিথিল করার পরে যদি একটি সম্ভাব্য সমাধান খুঁজে না পাওয়া যায় তবে তারা লঙ্ঘনের জন্য সর্বশেষ বিবেচনা করা হবে। |
PRIORITY_MANDATORY | অগ্রাধিকার স্তর যা এমন কিছুর প্রতিনিধিত্ব করে যা সমাধানকারী দ্বারা লঙ্ঘন করা যায় না। যদি সমাধানকারী SolutionStatus.INFEASIBLE ফেরত দেয়, তবে এটি অনেক বেশি PRIORITY_MANDATORY সীমাবদ্ধতার কারণে হতে পারে৷ |
সম্পদের সীমাবদ্ধতা
একটি সাধারণ সীমাবদ্ধতা যা একজন কর্মচারী দ্বারা ব্যবহৃত একটি নির্দিষ্ট "সম্পদ" এর পরিমাণকে সীমিত করে। এটি আরও নির্দিষ্ট SchedulingConstraint
একটি বিমূর্ত সংস্করণ যা ব্যবহারকারীর জন্য আরও নমনীয়। অনেক সময়সূচী সীমাবদ্ধতা যা SchedulingConstraint.type
এ নির্দিষ্ট করা যায় না এই বার্তাটি ব্যবহার করে নির্দিষ্ট করা যেতে পারে।
ক্ষেত্র | |
---|---|
priority | এই সম্পদ সীমাবদ্ধতা অগ্রাধিকার স্তর. সমস্ত সংস্থান সীমাবদ্ধতার জন্য ডিফল্ট অগ্রাধিকার হল |
resource_usages | শিফট দ্বারা ব্যবহৃত সম্পদের পরিমাণ। উদাহরণস্বরূপ, যদি এই সীমাবদ্ধতাটি একটি নির্দিষ্ট সপ্তাহে একজন কর্মচারীর দ্বারা কাজ করা সর্বনিম্ন এবং সর্বাধিক ঘন্টার ক্ষেত্রে প্রযোজ্য হয়, তাহলে এই মানচিত্রে সেই সপ্তাহে হওয়া শিফট এবং ঘন্টায় প্রতিটি শিফটের দৈর্ঘ্য থাকবে। |
minimum_resource_usage | একটি সম্পদ সীমাবদ্ধতা সন্তুষ্ট করার জন্য ন্যূনতম সম্পদ ব্যবহার। |
maximum_resource_usage | একটি সম্পদ সীমাবদ্ধতা সন্তুষ্ট করার জন্য সর্বাধিক সম্পদ ব্যবহার। |
সময়সূচী সীমাবদ্ধতা
একটি নির্দিষ্ট কর্মীর জন্য নির্দিষ্ট সময় নির্ধারণের সীমাবদ্ধতা। নির্দিষ্ট করা সীমাবদ্ধতা শুধুমাত্র প্রদত্ত ব্যবধানে প্রয়োগ করা হয় [start_date_time, end_date_time)
।
ক্ষেত্র | |
---|---|
priority | এই সময়সূচী সীমাবদ্ধতার জন্য অগ্রাধিকার স্তর। সমস্ত সময় নির্ধারণের সীমাবদ্ধতার জন্য ডিফল্ট অগ্রাধিকার হল |
start_date_time | যখন এই সময়সূচী সীমাবদ্ধতা প্রযোজ্য হবে তার জন্য শুরুর সময় (অন্তর্ভুক্ত)। |
end_date_time | যখন এই সময়সূচী সীমাবদ্ধতা প্রযোজ্য হবে তার শেষ সময় (একচেটিয়া)। |
ইউনিয়ন ক্ষেত্রের type । সীমাবদ্ধতার ধরন নির্দিষ্ট করা হচ্ছে। প্রতিটি সীমাবদ্ধতা শুধুমাত্র উপরে নির্দিষ্ট সময় উইন্ডোর মধ্যে প্রয়োগ করা হয়। type নিম্নলিখিতগুলির মধ্যে একটি হতে পারে: | |
minimum_minutes | কর্মচারী কাজ করতে পারে এমন ন্যূনতম সংখ্যক মিনিট। যদি কর্মচারীকে এমন একটি শিফটে নিযুক্ত করা হয় যা টাইম উইন্ডোকে (সম্পূর্ণ বা আংশিকভাবে) ওভারল্যাপ করে, তাহলে শিফটটি টাইম উইন্ডোকে ওভারল্যাপ করে এমন মিনিটের সংখ্যা এই গণনায় অন্তর্ভুক্ত করা হয়। |
maximum_minutes | টাইম উইন্ডোতে কর্মচারী সর্বোচ্চ কত মিনিট কাজ করতে পারে। যদি কর্মচারীকে এমন একটি শিফটে নিযুক্ত করা হয় যা টাইম উইন্ডোকে (সম্পূর্ণ বা আংশিকভাবে) ওভারল্যাপ করে, তাহলে শিফটটি টাইম উইন্ডোকে ওভারল্যাপ করে এমন মিনিটের সংখ্যা এই গণনায় অন্তর্ভুক্ত করা হয়। |
minimum_consecutive_work_days | কর্মচারী ন্যূনতম সংখ্যক পরপর দিন কাজ করতে পারে। একজন কর্মচারী একটি নির্দিষ্ট দিনে কাজ করেন যদি তাদের সেই দিন শুরু হওয়া একটি শিফটে নিয়োগ করা হয়। যে কোনো শিফট যা কর্মচারীকে নিযুক্ত করা হয় যা সময় উইন্ডোতে শুরু হয় তা এই গণনার অন্তর্ভুক্ত। |
maximum_consecutive_work_days | কর্মচারী সর্বোচ্চ সংখ্যক পরপর দিন কাজ করতে পারেন। একজন কর্মচারী একটি নির্দিষ্ট দিনে কাজ করেন যদি তাদের সেই দিন শুরু হওয়া একটি শিফটে নিয়োগ করা হয়। যে কোনো শিফট যা কর্মচারীকে নিযুক্ত করা হয় যা সময় উইন্ডোতে শুরু হয় তা এই গণনার অন্তর্ভুক্ত। |
minimum_shift_count | কর্মচারী কাজ করতে পারে এমন ন্যূনতম সংখ্যক শিফট। যে কোনও শিফট যা কর্মচারীকে নিয়োগ করা হয় যা টাইম উইন্ডোর সাথে সম্পূর্ণভাবে ওভারল্যাপ হয় তা এই গণনার অন্তর্ভুক্ত। |
maximum_shift_count | কর্মচারী সর্বোচ্চ সংখ্যক শিফটে কাজ করতে পারে। যে কোনও শিফট যা কর্মচারীকে নিয়োগ করা হয় যা টাইম উইন্ডোর সাথে সম্পূর্ণভাবে ওভারল্যাপ হয় তা এই গণনার অন্তর্ভুক্ত। |
minimum_rest_minutes | ন্যূনতম সংখ্যক মিনিট কর্মচারীকে অন্য শিফটে বরাদ্দ করার আগে একটি শিফট শেষ হওয়ার পরে বিশ্রাম নিতে হবে। [ |
শিফট
একটি শিফট একটি নির্দিষ্ট সময় উইন্ডো নির্দিষ্ট করে যেখানে কর্মচারীরা কাজ করতে পারে।
ক্ষেত্র | |
---|---|
id | এই শিফটে অনন্য আইডি বরাদ্দ করা হয়েছে। |
location_id | লোকেশন আইডি যেখানে এই শিফটে কাজ করা হয়। এই খালি হতে পারে. |
start_date_time | শিফটের শুরুর সময় (অন্তর্ভুক্ত)। |
end_date_time | শিফটের শেষ সময় (এক্সক্লুসিভ)। বর্তমানে, সমাধানকারী শুধুমাত্র 24 ঘন্টার কম দৈর্ঘ্যের পরিবর্তনের জন্য অনুমতি দেয়। |
break_rules[] | শিফটের সময় ঘটে যাওয়া বিরতির নিয়মগুলির একটি তালিকা৷ এই শিফটে কর্মরত কর্মচারীদের প্রতি |
শিফট অ্যাসাইনমেন্ট
শিফট-রোল অ্যাসাইনমেন্টের জন্য একজন কর্মচারী।
ক্ষেত্র | |
---|---|
employee_id | কর্মচারী আইডি বরাদ্দ করা হচ্ছে। |
shift_id | শিফট আইডি কর্মচারীকে বরাদ্দ করা হয়েছে। |
role_id | শিফটের জন্য কর্মচারীকে যে রোল আইডি দেওয়া হয়েছে। |
breaks[] | এই শিফট অ্যাসাইনমেন্টের জন্য বিরতির তালিকা। |
শিফট জেনারেশনসলিউশন স্ট্যাটাস
সমাধানকারীর প্রতিক্রিয়ায় দেওয়া সমাধানের স্থিতি।
Enums | |
---|---|
SHIFT_GENERATION_SOLUTION_STATUS_UNSPECIFIED | প্রতিক্রিয়া জন্য অনির্দিষ্ট অবস্থা. |
SHIFT_GENERATION_SOLVED | সমাধানকারী প্রদত্ত সময়সীমার মধ্যে একটি সমাধান খুঁজে পেয়েছে। |
SHIFT_GENERATION_NOT_SOLVED | একটি সমস্যা সমাধানকারীকে শিফট জেনারেট করতে বাধা দেয়। |
SHIFT_GENERATION_NOT_SOLVED_DEADLINE_EXCEEDED | প্রদত্ত সময়ের মধ্যে চাহিদা মেটাতে শিফট তৈরি করা যায়নি। |
শিফট পছন্দ
একটি নির্দিষ্ট শিফট আইডির জন্য একটি সংখ্যাগত পছন্দ।
ক্ষেত্র | |
---|---|
shift_id | শিফট আইডি যার জন্য পছন্দ নির্দিষ্ট করা আছে। |
preference | পছন্দের বৃহত্তর মানগুলি আরও পছন্দসই পরিবর্তনকে নির্দেশ করে৷ |
ShiftRequest
নির্দিষ্ট শিফটে বরাদ্দ করা বা না করার জন্য একজন কর্মচারীর অনুরোধ।
ক্ষেত্র | |
---|---|
priority | এই সময়সূচী অনুরোধের অগ্রাধিকার স্তর. সমস্ত সময় নির্ধারণের অনুরোধের জন্য ডিফল্ট অগ্রাধিকার হল |
shift_ids[] | সময়সূচী অনুরোধের শিফট আইডি। |
type | অনুরোধের ধরন, যেমন, শিফটের সেটে অনুরোধটি বরাদ্দ করা হবে বা না করা হবে। |
শিফট টেমপ্লেট
টেমপ্লেট শিফট জেনারেট করার নিয়ম উল্লেখ করে। একটি শিফট হল কাজের একটি ইউনিট যা একটি শুরুর সময়, শেষ সময় নির্দিষ্ট করে এবং এতে ইভেন্ট থাকতে পারে (যেমন লাঞ্চ, বিরতি, ইত্যাদি)। প্রতিক্রিয়ায় একটি নির্দিষ্ট তারিখে একটি স্থানান্তর বরাদ্দ করা হবে।
ক্ষেত্র | |
---|---|
id | এই টেমপ্লেটের অনন্য আইডি। |
earliest_start_time | দিনের প্রথমতম সময় যেখানে একটি শিফট শুরু হতে পারে। এই মান ঘন্টা এবং মিনিটের সাথে নির্দিষ্ট করা হয়; সেকেন্ড এবং ন্যানো উপেক্ষা করা হয়। |
latest_start_time | দিনের সর্বশেষ সময় যেখানে একটি শিফট শুরু হতে পারে। এই মান ঘন্টা এবং মিনিটের সাথে নির্দিষ্ট করা হয়; সেকেন্ড এবং ন্যানো উপেক্ষা করা হয়। যদি এই মানটি |
duration_minutes | এই টেমপ্লেট দ্বারা উত্পন্ন একটি স্থানান্তরের নির্দিষ্ট সময়কাল। |
start_time_increment_minutes | |
days_off_count_per_week | প্রতি সপ্তাহে ছুটির নির্দিষ্ট সংখ্যা। একজন কর্মচারীর একটি নির্দিষ্ট দিন ছুটি থাকে যদি তাদের সেই দিন শুরু হওয়া শিফটে নিয়োগ না করা হয়। একটি সপ্তাহ 7 দিন এবং রবিবার শুরু হয়। |
event_templates[] | প্রতিটি শিফটের জন্য ইভেন্ট তৈরি করার নিয়ম। নির্দিষ্ট করা প্রতিটি ইভেন্টের জন্য প্রতিটি শিফটে ঠিক একটি ইভেন্ট অন্তর্ভুক্ত করা হবে। |
minimum_interevent_gap_minutes | একটি ইভেন্টের শেষ এবং পরবর্তী শুরুর মধ্যে ন্যূনতম মিনিট। |
maximum_employee_count | এই টেমপ্লেট দ্বারা উত্পন্ন সমস্ত শিফটে সর্বাধিক সংখ্যক কর্মচারী নিয়োগ করা যেতে পারে৷ |
সমাধান অবস্থা
সমাধান (অর্থাৎ, একটি সময়সূচী) স্থিতি একটি সমাধানকারীর প্রতিক্রিয়ায় প্রদত্ত।
Enums | |
---|---|
SOLUTION_STATUS_UNSPECIFIED | প্রতিক্রিয়া জন্য অনির্দিষ্ট অবস্থা. |
FEASIBLE | প্রত্যাবর্তিত সময়সূচী সম্ভাব্য, কিন্তু সর্বোত্তম নাও হতে পারে। |
OPTIMAL | প্রত্যাবর্তিত সময়সূচী সর্বোত্তম. |
INFEASIBLE | প্রদত্ত সীমাবদ্ধতার জন্য কোন সম্ভাব্য সময়সূচী বিদ্যমান নেই। অগ্রাধিকার স্তর PRIORITY_MANDATORY সহ সীমাবদ্ধতার কোনো উপসেট সন্তুষ্ট না হলে সমাধানকারী এই মানটি ফেরত দিতে পারে৷ |
NOT_SOLVED | কোনো শিডিউল পাওয়া যায়নি। |
NOT_SOLVED_DEADLINE_EXCEEDED | প্রদত্ত সময়সীমার মধ্যে কোন সময়সূচী পাওয়া যায়নি। |
সমাধান প্যারামিটার
পরামিতি যা শিফট শিডিউলিং সমস্যার একটি একক সমাধান নিয়ন্ত্রণ করে।
ক্ষেত্র | |
---|---|
time_limit | সমস্যার সমাধানকারীর সর্বোচ্চ সময় ব্যয় করা উচিত। সেট না থাকলে, ডিফল্ট 1 মিনিট। এই মানটি একটি কঠিন সীমা নয় এবং এটি যোগাযোগের ওভারহেডের জন্য অ্যাকাউন্ট করে না। সমস্যা সমাধানের প্রত্যাশিত বিলম্ব এই মানটিকে সামান্য অতিক্রম করতে পারে। |
SolverConfig
শিফট জেনারেশন সমস্যা সমাধানের জন্য অতিরিক্ত প্যারামিটার নির্দিষ্ট করে।
ক্ষেত্র | |
---|---|
time_limit | সমস্যার সমাধানকারীর সর্বোচ্চ সময় ব্যয় করা উচিত। সেট না থাকলে, ডিফল্ট 1 মিনিট। একটি সময়সীমার পছন্দ সমস্যার আকারের উপর নির্ভর করে। একটি উদাহরণ দেওয়ার জন্য, 2টি এই মানটি একটি কঠিন সীমা নয় এবং এটি যোগাযোগের ওভারহেডের জন্য অ্যাকাউন্ট করে না। সমস্যা সমাধানের প্রত্যাশিত বিলম্ব এই মানটিকে সামান্য অতিক্রম করতে পারে। |
multi_day_schedule | সত্য হলে, সমাধানকারী |
shift_events_can_change | সত্য হলে, বহু-দিনের |
কাজের অবস্থা
একজন কর্মচারী কাজ করছে কি না।
Enums | |
---|---|
WORK_STATUS_UNSPECIFIED | অজানা কাজের অবস্থা। |
STATUS_WORK | কর্মরত কর্মচারীর প্রতিনিধিত্বকারী অবস্থা। |
STATUS_NOT_WORK | একজন অ-কর্মরত কর্মচারীর প্রতিনিধিত্বকারী অবস্থা। |