इंडेक्स
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
(enum)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] [10:40, 11:10]
फ़ील्ड | |
---|---|
earliest_start_time |
ब्रेक के शुरू होने का सबसे पहले का समय (शामिल है). सिर्फ़ |
latest_start_time |
ब्रेक के शुरू होने का सबसे नया समय (शामिल है). सिर्फ़ |
duration_minutes |
ब्रेक का कुल समय, मिनट में. |
rule_increment_minutes |
[ज़रूरी नहीं] ब्रेक के इस नियम में लागू होने वाले सभी ब्रेक के लिए, मिनट में समय की बढ़ोतरी. अगर यह नीति सेट नहीं है, तो डिफ़ॉल्ट रूप से |
BudgetRequirement
किसी दिए गए इंटरवल के लिए बजट की शर्तें.
फ़ील्ड | |
---|---|
total_budget |
किसी दिए गए इंटरवल के लिए कुल बजट. अगर प्राथमिकता अगर |
start_date_time |
यह बजट लागू होने का प्रारंभ समय. अगर शुरुआत का समय तय नहीं किया गया है, तो यह सभी शिफ़्ट के शुरू होने का सबसे पहले का समय होगा. |
end_date_time |
इस बजट के लागू होने का समय. अगर खत्म होने का समय तय नहीं किया गया है, तो इसे सभी शिफ़्ट के सबसे नए खत्म होने के समय के तौर पर सेट किया जाता है. |
priority |
तय समयावधि के दौरान, बजट की ज़रूरी शर्तों को पूरा करने के लिए प्राथमिकता का लेवल. डिफ़ॉल्ट प्राथमिकता ध्यान दें कि अगर यह प्राथमिकता अन्य कंस्ट्रेंट प्राथमिकताओं से ज़्यादा है और अगर |
CoverageRequirement
कवरेज से जुड़ी शर्त से यह पता चलता है कि किसी तय समयावधि में और दी गई जगह पर, कुछ भूमिकाओं और/या कौशल के लिए, कितने कर्मचारियों की ज़रूरत होती है. किसी खास जगह के तारीख और समय के अंतराल ओवरलैप नहीं कर सकते. इसके अलावा, टाइम विंडो और जगह के बजाय, शिफ़्ट आईडी की सूची दी जा सकती है. इस शर्त को सिर्फ़ वे कर्मचारी पूरा कर सकते हैं जिन्हें कोई खास भूमिका असाइन की जा सकती है या जिनके पास कोई खास स्किल है.
किसी भूमिका और/या कौशल के लिए, कवरेज से जुड़ी ज़रूरी शर्त तब पूरी होती है, जब टाइम विंडो में हर समय (या 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[] |
समय विंडो के दौरान शिफ़्ट में असाइन किए गए खास कौशल वाले कर्मचारियों की ज़रूरी संख्या. हर स्किल आईडी के लिए, ज़्यादा से ज़्यादा एक |
RoleRequirement
समयावधि के दौरान, तय की गई भूमिका में असाइन किए जाने वाले कर्मचारियों की ज़रूरी संख्या.
फ़ील्ड | |
---|---|
role_id |
ज़रूरी शर्त के लिए रोल आईडी. |
target_employee_count |
समयावधि के दौरान, भूमिका के लिए असाइन किए गए कर्मचारियों की संख्या. |
priority |
इस ज़रूरी शर्त के लिए प्राथमिकता का लेवल. सभी संसाधन कंस्ट्रेंट के लिए डिफ़ॉल्ट प्राथमिकता |
SkillRequirement
ऐसे कर्मचारियों की आवश्यक संख्या जो समयावधि के दौरान काम कर रहे हैं और जो खास कौशल रखते हैं.
फ़ील्ड | |
---|---|
skill_id |
ज़रूरी शर्त के लिए स्किल आईडी. |
target_employee_count |
दिए गए कौशल वाले उन कर्मचारियों की संख्या जो तय समय के दौरान काम कर रहे हैं. |
priority |
इस ज़रूरी शर्त के लिए प्राथमिकता का लेवल. सभी संसाधन कंस्ट्रेंट के लिए डिफ़ॉल्ट प्राथमिकता |
DemandCoverageViolation
दिए गए इंटरवल के लिए, डिमांड कवरेज के उल्लंघन की जानकारी देता है. बताए गए पूरे अंतराल के दौरान कर्मचारी की मांग एक ही रहती है.
फ़ील्ड | |
---|---|
start_date_time |
मांग के इंटरवल के लिए शुरू होने की तारीख और समय (इसमें भी शामिल है). यह मान मिनट तक बताया जाता है. |
end_date_time |
मांग के इंटरवल के खत्म होने की तारीख और समय (खास तौर पर). यह मान मिनट तक बताया जाता है. |
coverage_violation |
किसी खास अवधि के दौरान कवरेज से जुड़ा उल्लंघन. पॉज़िटिव वैल्यू से पता चलता है कि मांग पूरी तरह से कवर की गई है. वहीं, नेगेटिव वैल्यू से पता चलता है कि मांग पूरी तरह से कवर की गई है. |
कर्मचारी
टीम में काम करने वाले किसी कर्मचारी का शेड्यूल होना है.
फ़ील्ड | |
---|---|
id |
इस कर्मचारी को असाइन किया गया यूनीक आईडी. |
role_ids[] |
रोल आईडी जिन्हें यह कर्मचारी काम कर सकता है. कम से कम एक भूमिका तय होनी चाहिए. जब किसी कर्मचारी को शिफ़्ट में असाइन किया जाता है, तो उसे भी इस सूची में से एक भूमिका के लिए असाइन किया जाता है. अपॉइंटमेंट शेड्यूल करने की समयसीमा के दौरान, कर्मचारी को अलग-अलग भूमिकाएं असाइन की जा सकती हैं. |
skill_ids[] |
इस कर्मचारी के पास मौजूद स्किल आईडी. यह सूची खाली हो सकती है. जब किसी कर्मचारी को शिफ़्ट के लिए असाइन किया जाता है, तो असाइन किए गए शिफ़्ट के दौरान स्किल से जुड़ी ज़रूरी शर्तों को पूरा करने के लिए, कर्मचारी यहां बताए गए कौशल के किसी भी सबसेट का इस्तेमाल करता है. |
shift_preferences[] |
इस कर्मचारी की प्राथमिकताएं बदलें. यहां बताई गई शिफ़्ट उन शिफ़्ट को दिखाती हैं जिन्हें शेड्यूल करने की समयसीमा के दौरान कर्मचारी असाइन करना चाहता है. |
scheduling_constraints[] |
इस कर्मचारी के लिए शेड्यूलिंग प्रतिबंधों की सूची. इनमें से हर एक कंस्ट्रेंट के लिए, प्राथमिकता का डिफ़ॉल्ट लेवल |
resource_constraints[] |
शेड्यूल करने से जुड़ी जिन अतिरिक्त पाबंदियों की जानकारी |
shift_requests[] |
कर्मचारी के लिए, शिफ़्ट के अनुरोधों की सूची. यह अनुरोध किसी कर्मचारी को असाइन किए जाने या किसी खास शिफ़्ट में नहीं असाइन किए जाने के लिए भी हो सकता है. कर्मचारी के लिए, तय शेड्यूल किए गए किसी भी असाइनमेंट को |
hourly_contract |
कॉन्ट्रैक्ट में, कर्मचारी के लिए हर घंटे के हिसाब से सामान्य और ओवरटाइम के हिसाब से शुल्क तय किया जाता है. |
EmployeeDemand
यह बताता है कि किसी दिए गए तारीख और समय के अंतराल में मांग को पूरा करने के लिए कितने कर्मचारियों की ज़रूरत है.
फ़ील्ड | |
---|---|
start_date_time |
किसी खास मांग के लिए, समय अंतराल की शुरुआत. इसमें यह समय भी शामिल है. इन वैल्यू को मिनट के हिसाब से पढ़ा जाता है; सेकंड और सभी छोटी इकाइयों को अनदेखा कर दिया जाता है. |
end_date_time |
किसी खास मांग के लिए, समयावधि खत्म होना. इन वैल्यू को मिनट के हिसाब से पढ़ा जाता है; सेकंड और सभी छोटी इकाइयों को अनदेखा कर दिया जाता है. |
employee_count |
इस इंटरवल में की गई मांग को पूरा करने के लिए ज़रूरी कर्मचारियों की संख्या. |
EmployeeSchedule
एक ShiftTemplate
के हिसाब से शिफ़्ट की क्रम वाली सूची, जिसे कई कर्मचारियों को असाइन किया जाना है.
फ़ील्ड | |
---|---|
shift_template_id |
उस टेंप्लेट का आईडी जिसका इस्तेमाल शिफ़्ट के इस सेट को जनरेट करने के लिए किया गया था. |
shifts[] |
उन शिफ़्ट की सूची जिनमें |
employee_count |
उन कर्मचारियों की संख्या जिन्हें मांग को पूरा करने के लिए शिफ़्ट के इस सेट में असाइन किया जाना चाहिए. |
ShiftWithEvents
सॉल्वर से जनरेट हुए शिफ़्ट के तय इवेंट की सूची के साथ-साथ, शुरू और खत्म होने की तारीख की जानकारी देता है.
फ़ील्ड | |
---|---|
start_date_time |
शिफ़्ट के शुरू होने की तारीख और समय. यह मान मिनट के हिसाब से तय किया जाता है; सेकंड और इससे छोटी इकाइयां नहीं दिखाई जाती हैं. |
end_date_time |
शिफ़्ट की खत्म होने की तारीख और समय. यह मान मिनट के हिसाब से तय किया जाता है; सेकंड और इससे छोटी इकाइयां नहीं दिखाई जाती हैं. |
events[] |
इस शिफ़्ट में शामिल इवेंट की सूची, जो |
इवेंट
सॉल्वर के ज़रिए जनरेट किए गए शिफ़्ट में, किसी इवेंट के शुरू और खत्म होने की तारीख और समय तय करता है.
फ़ील्ड | |
---|---|
event_template_id |
इस इवेंट को जनरेट करने के लिए इस्तेमाल किए गए टेंप्लेट का आईडी. |
start_date_time |
इवेंट शुरू होने की तारीख और समय. यह मान मिनट के हिसाब से तय किया जाता है; सेकंड और इससे छोटी इकाइयां नहीं दिखाई जाती हैं. |
end_date_time |
इवेंट खत्म होने की तारीख और समय. यह मान मिनट के हिसाब से तय किया जाता है; सेकंड और इससे छोटी इकाइयां नहीं दिखाई जाती हैं. |
EventTemplate
शिफ़्ट के दौरान होने वाला एक इवेंट जनरेट करने के नियम तय करने वाला टेंप्लेट. इवेंट में मीटिंग, ब्रेक, लंच वगैरह को दिखाया जा सकता है.
फ़ील्ड | |
---|---|
id |
इस टेंप्लेट का यूनीक आईडी. |
minimum_minutes_after_shift_start |
शिफ़्ट शुरू होने के बाद, इस इवेंट के शुरू होने के कम से कम मिनट की संख्या. |
maximum_minutes_after_shift_start |
शिफ़्ट शुरू होने के बाद, इस इवेंट के शुरू होने के ज़्यादा से ज़्यादा मिनट. |
duration_minutes |
इस इवेंट के मिनट में तय समय. |
start_time_increment_minutes |
समय की बढ़ोतरी (मिनट में) का इस्तेमाल, |
HourlyContract
किसी कर्मचारी को मिलने वाले मुआवज़े का पता लगाने के लिए, हर घंटे के हिसाब से मूल दर, दर में अंतर, और ओवरटाइम की संख्या में मल्टीप्लायर की जानकारी देता है. ध्यान दें कि अलग-अलग जगहों पर लागू नियमों के तहत, ओवरटाइम मुआवज़े का हिसाब अलग तरीके से लगाना पड़ सकता है. समाधानकर्ता ओवरटाइम मुआवज़े का अनुमान लगाता है, ताकि कुल लागत की प्रॉक्सी को कम किया जा सके या बजट को पूरा किया जा सके (BudgetRequirement
देखें). इसे पेरोल का हिसाब लगाने के टूल के तौर पर इस्तेमाल नहीं किया गया है.
फ़ील्ड | |
---|---|
base_hourly_rate |
नॉन-ओवरटाइम घंटे काम करने के लिए मिलने वाला मुआवज़ा. अगर कर्मचारी पर एक से ज़्यादा दरें लागू होती हैं, तो दर में अंतर, इस आधार पर घंटे के हिसाब से दर के हिसाब से लागू किया जाता है. इसके अलावा, अगर एक से ज़्यादा दरें लागू होती हैं, तो हर घंटे के हिसाब से मूल दर, इन दरों से कम होनी चाहिए. |
hourly_rate_shift_differentials |
हर घंटे के हिसाब से दर का अंतर, जो |
overtime_periods[] |
उन सभी अवधियों की सूची जिनके लिए ओवरटाइम का हिसाब लगाना है. ये अवधि ओवरलैप नहीं होनी चाहिए. |
OvertimePeriod
एक तय और नियमित रूप से बार-बार होने वाली अवधि (आम तौर पर 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 कंस्ट्रेंट की वजह से हो सकता है. |
ResourceConstraint
एक सामान्य सीमा, जो किसी कर्मचारी के इस्तेमाल किए जाने वाले खास "संसाधन" की मात्रा को सीमित करती है. यह उस SchedulingConstraint
का ऐब्सट्रैक्ट वर्शन है जिसे कोई भी उपयोगकर्ता आसानी से इस्तेमाल कर सकता है. SchedulingConstraint.type
में नहीं बताई जा सकने वाली कई शेड्यूलिंग पाबंदियां, इस मैसेज का इस्तेमाल करके तय की जा सकती हैं.
फ़ील्ड | |
---|---|
priority |
इस रिसॉर्स कंस्ट्रेंट का प्राथमिकता लेवल. सभी संसाधन कंस्ट्रेंट के लिए डिफ़ॉल्ट प्राथमिकता |
resource_usages |
शिफ़्ट में इस्तेमाल किए गए संसाधन की संख्या. उदाहरण के लिए, अगर यह प्रतिबंध किसी हफ़्ते में किसी कर्मचारी के काम करने के कम से कम और ज़्यादा से ज़्यादा घंटों पर लागू होता है, तो इस मैप में उस हफ़्ते के बदलावों और हर शिफ़्ट की अवधि, घंटों में दिखाई जाएगी. |
minimum_resource_usage |
किसी संसाधन के सीमित इस्तेमाल को पूरा करने के लिए, संसाधन का कम से कम इस्तेमाल. |
maximum_resource_usage |
किसी संसाधन की सीमा को पूरा करने के लिए, संसाधन का ज़्यादा से ज़्यादा इस्तेमाल. |
SchedulingConstraint
किसी विशेष कर्मचारी के लिए शेड्यूल करने की खास सीमा. बताया गया कंस्ट्रेंट सिर्फ़ दिए गए इंटरवल [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 |
कर्मचारियों को एक शिफ़्ट खत्म होने के बाद, दूसरी शिफ़्ट में असाइन किए जाने से पहले, कम से कम मिनट तक आराम करना चाहिए. यह कंस्ट्रेंट, [ |
Shift
शिफ़्ट एक तय समयावधि को दिखाती है, जिसमें कर्मचारी काम कर सकते हैं.
फ़ील्ड | |
---|---|
id |
इस शिफ़्ट के लिए असाइन किया गया यूनीक आईडी. |
location_id |
वह जगह का आईडी जिसमें यह शिफ़्ट हुआ है. यह फ़ील्ड खाली हो सकता है. |
start_date_time |
शिफ़्ट के शुरू होने का समय (शामिल) |
end_date_time |
शिफ़्ट के खत्म होने का समय (शामिल नहीं है). फ़िलहाल, सॉल्वर में सिर्फ़ 24 घंटे से कम समय वाले शिफ़्ट के इस्तेमाल किए जा सकते हैं. |
break_rules[] |
शिफ़्ट के दौरान लागू होने वाले ब्रेक के नियमों की सूची. इस शिफ़्ट में काम करने वाले कर्मचारियों को हर |
ShiftAssignment
एक कर्मचारी को बदला जा रहा है.
फ़ील्ड | |
---|---|
employee_id |
असाइन किया जा रहा कर्मचारी आईडी. |
shift_id |
कर्मचारी को असाइन किया गया Shift आईडी. |
role_id |
वह रोल आईडी जिसे शिफ़्ट के लिए कर्मचारी को असाइन किया गया है. |
breaks[] |
शिफ़्ट के इस असाइनमेंट के लिए ब्रेक की सूची. |
ShiftGenerationSolutionStatus
सॉल्वर से मिले जवाब में मौजूद सॉल्यूशन का स्टेटस.
Enums | |
---|---|
SHIFT_GENERATION_SOLUTION_STATUS_UNSPECIFIED |
जवाब की स्थिति की जानकारी नहीं है. |
SHIFT_GENERATION_SOLVED |
सॉल्वर ने दी गई समयसीमा में समस्या का हल ढूंढ लिया है. |
SHIFT_GENERATION_NOT_SOLVED |
किसी समस्या की वजह से, सॉल्वर टूल में शिफ़्ट जनरेट नहीं कर पा रहा है. |
SHIFT_GENERATION_NOT_SOLVED_DEADLINE_EXCEEDED |
दी गई समयसीमा में मांग को पूरा करने के लिए, शिफ़्ट जनरेट नहीं किए जा सके. |
ShiftPreference
शिफ़्ट आईडी के लिए अंकों वाली प्राथमिकता.
फ़ील्ड | |
---|---|
shift_id |
Shift आईडी जिसके लिए प्राथमिकता दी गई है. |
preference |
'प्राथमिकता' की बड़ी वैल्यू, ज़्यादा ज़रूरी बदलाव दिखाती है. |
ShiftRequest
किसी कर्मचारी को किसी खास शिफ़्ट में असाइन किए जाने या न किए जाने का अनुरोध.
फ़ील्ड | |
---|---|
priority |
शेड्यूल करने के इस अनुरोध के लिए प्राथमिकता का लेवल. शेड्यूल करने के सभी अनुरोधों की डिफ़ॉल्ट प्राथमिकता |
shift_ids[] |
शेड्यूल करने के अनुरोध के शिफ़्ट आईडी. |
type |
अनुरोध का टाइप, जैसे कि शिफ़्ट के सेट के लिए अनुरोध असाइन किया गया है या नहीं. |
ShiftTemplate
शिफ़्ट जनरेट करने के नियम तय करने वाला टेंप्लेट. शिफ़्ट काम की एक इकाई है, जो शुरू होने और खत्म होने का समय तय करती है और इसमें इवेंट (जैसे कि लंच, ब्रेक वगैरह) हो सकते हैं. जवाब में किसी खास तारीख के लिए शिफ़्ट को असाइन किया जाएगा.
फ़ील्ड | |
---|---|
id |
इस टेंप्लेट का यूनीक आईडी. |
earliest_start_time |
दिन का सबसे पहला समय जब कोई शिफ़्ट शुरू हो सकती है. यह वैल्यू घंटे और मिनट की मदद से तय की जाती है. सेकंड और नैनो को अनदेखा कर दिया जाता है. |
latest_start_time |
दिन का सबसे हाल का समय, जब शिफ़्ट शुरू हो सकती है. यह वैल्यू घंटे और मिनट की मदद से तय की जाती है. सेकंड और नैनो को अनदेखा कर दिया जाता है. अगर यह वैल्यू |
duration_minutes |
इस टेंप्लेट से जनरेट हुए शिफ़्ट की तय अवधि. |
start_time_increment_minutes |
समय की बढ़ोतरी (मिनट में) का इस्तेमाल, |
days_off_count_per_week |
हर हफ़्ते दिनों की तय संख्या. अगर किसी कर्मचारी को उस दिन शुरू होने वाली शिफ़्ट में काम करने के लिए असाइन नहीं किया गया है, तो उसके लिए छुट्टी का दिन तय किया गया है. एक हफ़्ता सात दिनों का होता है और इसकी शुरुआत रविवार से होती है. |
event_templates[] |
हर शिफ़्ट के लिए इवेंट जनरेट करने के नियम. बताए गए हर इवेंट के लिए, हर शिफ़्ट में सिर्फ़ एक इवेंट शामिल किया जाएगा. |
minimum_interevent_gap_minutes |
एक इवेंट के खत्म होने और अगले इवेंट के शुरू होने के बीच के कम से कम मिनट. |
maximum_employee_count |
इस टेंप्लेट से जनरेट की गई सभी शिफ़्ट में असाइन किए जा सकने वाले कर्मचारियों की ज़्यादा से ज़्यादा संख्या. |
SolutionStatus
किसी सॉल्वर से मिले जवाब में मौजूद सलूशन (यानी कि शेड्यूल) का स्टेटस.
Enums | |
---|---|
SOLUTION_STATUS_UNSPECIFIED |
जवाब की स्थिति की जानकारी नहीं है. |
FEASIBLE |
वापस किया गया शेड्यूल संभव है, लेकिन हो सकता है कि यह बेहतर न हो. |
OPTIMAL |
वापस भेजा गया शेड्यूल सबसे बेहतर है. |
INFEASIBLE |
दिए गए कंस्ट्रेंट के लिए कोई संभव शेड्यूल मौजूद नहीं है. अगर प्राथमिकता लेवल PRIORITY_MANDATORY वाले कंस्ट्रेंट का कोई सबसेट पूरा नहीं हो पाता है, तो सॉल्वर यह वैल्यू दिखा सकता है. |
NOT_SOLVED |
कोई शेड्यूल नहीं मिला. |
NOT_SOLVED_DEADLINE_EXCEEDED |
दी गई समयसीमा में कोई शेड्यूल नहीं मिला. |
SolveParameters
ऐसे पैरामीटर जो शिफ़्ट शेड्यूलिंग की समस्या के एक ही समाधान को कंट्रोल करते हैं.
फ़ील्ड | |
---|---|
time_limit |
वह ज़्यादा से ज़्यादा समय जो सॉल्वर को समस्या पर बिताना चाहिए. अगर यह नीति सेट नहीं है, तो डिफ़ॉल्ट रूप से एक मिनट होता है. इस वैल्यू के लिए कोई तय सीमा नहीं है. साथ ही, इसमें कम्यूनिकेशन का ओवरहेड शामिल नहीं होता. इस समस्या को हल करने में लगने वाला अनुमानित समय, वैल्यू से थोड़ा ज़्यादा हो सकता है. |
SolverConfig
शिफ़्ट जेनरेशन की समस्या को हल करने के लिए अतिरिक्त पैरामीटर तय करता है.
फ़ील्ड | |
---|---|
time_limit |
वह ज़्यादा से ज़्यादा समय जो सॉल्वर को समस्या पर बिताना चाहिए. अगर यह नीति सेट नहीं है, तो डिफ़ॉल्ट रूप से एक मिनट होता है. समयसीमा, इस बात पर निर्भर करेगी कि समस्या कितनी बड़ी है. उदाहरण के लिए, सात दिनों के लिए दो इस वैल्यू के लिए कोई तय सीमा नहीं है. साथ ही, इसमें कम्यूनिकेशन का ओवरहेड शामिल नहीं होता. इस समस्या को हल करने में लगने वाला अनुमानित समय, वैल्यू से थोड़ा ज़्यादा हो सकता है. |
multi_day_schedule |
सही होने पर, सॉल्वर |
shift_events_can_change |
अगर सही है, तो कई दिनों वाले |
WorkStatus
कोई कर्मचारी काम कर रहा है या नहीं.
Enums | |
---|---|
WORK_STATUS_UNSPECIFIED |
काम की स्थिति की जानकारी नहीं है. |
STATUS_WORK |
कामकाजी कर्मचारी का स्टेटस. |
STATUS_NOT_WORK |
गैर-काम करने वाले कर्मचारी का स्टेटस. |