Ejemplo n.º 1
0
        public void MolalardanDagilimOlustur(ServisGunMola servisGunMola)
        {
            if (servisGunMola != null)
            {
                this.NormalGirisSaati = servisGunMola.BaslangicSaati;
                this.NormalCikisSaati = servisGunMola.BitisSaati;
            }

            Dagilim = new List <PuantajGunluguDagilim>();

            servisGunMola?.Molalar.forEach(mola => Dagilim.add(new PuantajGunluguDagilim()
            {
                BaslangicSaati = mola.Baslangic, BitisSaati = mola.Bitis, NedenKodu = "AD"
            }));

            Dagilim = Dagilim.orderBy(t => t.BaslangicSaati).toList();

            List <PuantajGunluguDagilim> customDagilimlar = new List <PuantajGunluguDagilim>();

            int firstStart = 0;
            int lastFinish = 1440;

            int count = 0;

            Dagilim.forEach(dag =>
            {
                count++;

                int fark            = 0;
                int intersectStart  = 0;
                int intersectFinish = 0;

                if (Antibiotic.Helpers.IntegerHelpers.IsIntersect(firstStart, lastFinish, dag.BaslangicSaati, dag.BitisSaati, out fark, out intersectStart, out intersectFinish))
                {
                    PuantajGunluguDagilim dagItem = new PuantajGunluguDagilim(firstStart, intersectStart)
                    {
                        NedenKodu = "NÇ"
                    };
                    if (fark.isInRange(30, 90))
                    {
                        dag.NedenKodu = "YM";
                    }

                    customDagilimlar.add(dagItem);
                }
                firstStart = dag.BitisSaati;

                if (count == Dagilim.Count)
                {
                    if (dag.BitisSaati < 1440)
                    {
                        customDagilimlar.add(new PuantajGunluguDagilim(firstStart, lastFinish)
                        {
                            NedenKodu = "NÇ"
                        });
                    }
                }
            });

            if (Dagilim.Count == 0)
            {
                customDagilimlar.add(new PuantajGunluguDagilim(firstStart, lastFinish)
                {
                    NedenKodu = "NÇ"
                });
            }

            Dagilim.addRange(customDagilimlar);
            Dagilim = Dagilim.orderBy(t => t.BaslangicSaati).toList();


            //NormalGirisSaati
        }
Ejemplo n.º 2
0
 public PuantajGunlugu(ServisGunMola servisGunMola)
 {
     MolalardanDagilimOlustur(servisGunMola);
 }