コード例 #1
0
 protected void SkusPoslatNaObedAleboObsluzDalsieho(Pracovnik pracovnik)
 {
     if (!SkustPoslatPracovnikaNaObed(pracovnik))
     {
         AkCakaSpracujDalsieho();
     }
 }
コード例 #2
0
 protected void NavratPracovnikaZObedu(Pracovnik pracovnik)
 {
     MyAgent.DostupniPracovnici.Set(pracovnik.IDPracovnika, true);
     MyAgent.NenajedeniPracovnici.Set(pracovnik.IDPracovnika, false);
     pracovnik.Obedoval = true;
     --MyAgent.PocetObedujucich;
     pracovnik.Stav = "Nečinný";
     NaplanujMozneObedy();
     AkCakaSpracujDalsieho();
 }
コード例 #3
0
        protected void DokonceniePracePracovnikom(Pracovnik pracovnik)
        {
            MyAgent.DostupniPracovnici.Set(pracovnik.IDPracovnika, true);
            pracovnik.Utilization.AddSample(0);
            --MyAgent.PocetPracujucich;
            pracovnik.Stav = "Nečinný";
            MyAgent.VytazeniePracovnikov.AddSample((double)MyAgent.PocetPracujucich / (MyAgent.PocetPracovnikov - MyAgent.PocetObedujucich));

            SkusPoslatNaObedAleboObsluzDalsieho(pracovnik);
        }
コード例 #4
0
 protected bool SkustPoslatPracovnikaNaObed(Pracovnik pracovnik)
 {
     if (MyAgent.NenajedeniPracovnici[pracovnik.IDPracovnika] && MyAgent.PocetObedujucich < MyAgent.PocetPracovnikov / 2 && MyAgent.JeCasObeda)
     {
         var sprava = new Sprava(MySim);
         sprava.Code      = Mc.VykonajObed;
         sprava.Pracovnik = pracovnik;
         sprava.Addressee = ((VacCenterSimulation)MySim).AgentVakCentra;
         MyAgent.DostupniPracovnici.Set(pracovnik.IDPracovnika, false);
         ++MyAgent.PocetObedujucich;
         ++MyAgent.PocetUzNajedenychPracovnikov;
         Request(sprava);
         return(true);
     }
     return(false);
 }