public bool TryMaintainNewZayavka(Zayavka zayavka) { if (zayavka == null) { return(false); } var obrabotchikToAddZayavka = Obrabotchiks.FirstOrDefault(obrabotchik => obrabotchik.Zayavka == null); if (obrabotchikToAddZayavka == null) { return(Nakopitel.TryToAddZayavka(zayavka)); } obrabotchikToAddZayavka.Zayavka = zayavka; return(true); }
public void MaintainNakopitel() { for (int i = 0; i < Obrabotchiks.Count(obrabotchik => obrabotchik.Zayavka == null); i++) { if (Nakopitel.Zayavki.Count == 0) { return; } var zayavka = Nakopitel.Zayavki.Peek(); if (zayavka == null) { return; } if (TryMaintainNewZayavka(zayavka)) { Nakopitel.Zayavki.Dequeue(); } } }