private void karsilasmayaHakemAta(Fikstur fks, List <Hakem> hakemlistesi, int j, List <int> rastgeleHakemListesi) { j = rastgeleHakemListesi.ElementAt(j); string str = hakemlistesi.ElementAt(j).hakem_adi + " " + hakemlistesi.ElementAt(j).hakem_soyadi + " - "; bool ikinciHakemEklendi = true; for (int i = 0; i < hakemlistesi.Count(); i++) { // kendisi dışında aynı grupta adam varmı if (hakemlistesi.ElementAt(j).hakem_grup.Equals(hakemlistesi.ElementAt(i).hakem_grup) && hakemlistesi.ElementAt(j).hakem_id != hakemlistesi.ElementAt(i).hakem_id) { str += hakemlistesi.ElementAt(i).hakem_adi + " " + hakemlistesi.ElementAt(i).hakem_soyadi; ikinciHakemEklendi = false; } } if (ikinciHakemEklendi) { //aynı grupta hakem yoksa ensondaki hakem atanır int indis = rastgeleHakemListesi.ElementAt(rastgeleHakemListesi.Count); str += hakemlistesi.ElementAt(indis).hakem_adi + " " + hakemlistesi.ElementAt(indis).hakem_soyadi; } fks.fikstur_hakem = str; }
//fikstur oluşturulmaya başlanıyor private void fiksturOlustur() { List <Takim> takimListesi = fkcon.takimlariCek(islemYapilanLig); int takimSayisi = takimListesi.Count; List <string> haftaListesi = haftalariOlustur(takimSayisi); List <string> gunListesi = gunleriOlustur(haftaListesi, dtpFiksturBaslangic); List <Fikstur> fiksturListesi = new List <Fikstur>(); List <int> rastgeleTakimListesi = rastgeleTakimListesiOlustur(takimSayisi); List <Hakem> hakemlistesi = ligeGoreHakemCek(islemYapilanLig); List <int> rastgeleHakemListesi = rastgeleHakemListesiOlustur(hakemlistesi.Count); //haftalar for (int i = 0; i < (takimSayisi - 1) * 2; i++) { //karşılaşmalar // j takım ve hakem seçerken ikişer tane seçiyoruz oyuzden ikişer artıyor for (int j = 0; j < takimSayisi; j += 2) { Fikstur fks = new Fikstur(); karsilasmayaGunAta(fks, j, i, takimSayisi, gunListesi); karsilasmayaSaatAta(fks, j, takimSayisi); fiksturTakimSalonLigHaftaAta(haftaListesi, takimListesi, rastgeleTakimListesi, i, j, fks); karsilasmayaHakemAta(fks, hakemlistesi, j, rastgeleHakemListesi); fiksturListesi.Add(fks); } listeyiKaydir(rastgeleTakimListesi); //rastgele listesinde kaydırma yapıyoruz } gozlemcilereHaberVer("FiksturKaydet", fiksturListesi, islemYapilanLig); //kayıt işlemini yaptırıyoruz }
private void karsilasmayaSaatAta(Fikstur fks, int j, int tsayi) { if (j < tsayi / 2) { fks.fikstur_saat = "15:00"; } else { fks.fikstur_saat = "17:00"; } }
private void karsilasmayaGunAta(Fikstur fks, int j, int i, int tsayi, List <string> gunListe) { if (j < tsayi / 2) { fks.fikstur_gun = gunListe.ElementAt(i * 2); } else { fks.fikstur_gun = gunListe.ElementAt((i * 2) + 1); } }
public void fiksturKaydetDB(String ilkTakim, String ikinciTakim, String tarih, String saat, String hafta, String lig, String ortaHakem, String yardimciHakem, String dorduncuHakem, String stad) { using (var db = new HakemOtomasyonDataContext()) { Fikstur fiks = new Fikstur(); fiks.ilkTakim = ilkTakim; fiks.ikinciTakim = ikinciTakim; fiks.tarih = tarih; fiks.saat = saat; fiks.hafta = hafta; fiks.lig = lig; fiks.ortaHakem = ortaHakem; fiks.yardimciHakem = yardimciHakem; fiks.dorduncuHakem = dorduncuHakem; fiks.stadyum = stad; db.Fiksturs.InsertOnSubmit(fiks); db.SubmitChanges(); } }
private void fiksturTakimSalonLigHaftaAta(List <string> haftaListesi, List <Takim> takimListesi, List <int> rastgeleTakimListesi, int i, int j, Fikstur fks) { //rastgele sayı listesine göre takim listesinden takim seçiyoruz Takim tkm1 = takimListesi.ElementAt(rastgeleTakimListesi.ElementAt(j)); Takim tkm2 = takimListesi.ElementAt(rastgeleTakimListesi.ElementAt(j + 1)); fks.fikstur_takim1 = tkm1.takim_adi; fks.fikstur_takim2 = tkm2.takim_adi; fks.fikstur_salon = tkm1.takim_salon; fks.fikstur_lig = islemYapilanLig; fks.fikstur_hafta = haftaListesi.ElementAt(i); }