Example #1
0
        public void ParcaKgHesapla()
        {
            double TeorikKg = 0;
            double Kg_1, Kg_2, KumasKg;

            tblKumas tip = db.GetGeneric <tblKumas>(c => c.Id == YeniMamulKumas.TipId).FirstOrDefault();

            if (tip == null && tip.MamulAgirlik == null)
            {
                return;
            }
            if (YeniMamulKumas.Tur == "Alt")
            {
                if (tip != null && tip.MamulAgirlik != null)
                {
                    TeorikKg = Math.Round((tip.MamulAgirlik.Value * YeniMamulKumas.Metre / 1000), 2);
                }
            }
            if (YeniMamulKumas.Tur == "Ust")
            {
                if (tip != null && tip.MamulAgirlik != null)
                {
                    TeorikKg = Math.Round((tip.MamulAgirlikUst.Value * YeniMamulKumas.Metre / 1000), 2);
                }
            }
            Kg_1    = Math.Round((TeorikKg * 2 / 100) + TeorikKg, 2);  Kg_2 = Math.Round(TeorikKg - (TeorikKg * 4 / 100), 2);
            KumasKg = ((double)YeniMamulKumas.Kg - 1.5);
            if ((Kg_2 <= KumasKg && KumasKg <= Kg_1) == false)
            {
                throw new Exception("Tartılan Ağırlık ile Mamül Ağırlığı Arasında Fark Var.\n\nKontrol Ediniz.");
            }
        }
Example #2
0
        public double ParcaKgHesapla()
        {
            tblKumas tip = db.GetGeneric <tblKumas>(c => c.Id == ParcaKumas.TipId).FirstOrDefault();

            if (tip != null && tip.MamulAgirlik != null)
            {
                ParcaKumas.Kg = Math.Round((tip.MamulAgirlik.Value * ParcaKumas.Metre / 1000), 2);
            }

            return(ParcaKumas.Kg);
        }
Example #3
0
        private int KumasKaydet(vKumas kumas)
        {
            tblKumas tbl = vKumas.ViewToTable(kumas);

            if (db.SaveGeneric <tblKumas>(ref tbl))
            {
                return(tbl.Id);
            }
            else
            {
                return(0);
            }
        }
Example #4
0
        public bool TipKaydet(vKumas kumas)
        {
            tblKumas tbl = vKumas.ViewToTable(kumas);

            if (kumas.Id == 0)
            {
                tblKumas kumasKontrol = db.GetGeneric <tblKumas>(c => c.TipNo == kumas.TipNo && c.Varyant == kumas.Varyant).FirstOrDefault();
                if (kumasKontrol != null)
                {
                    throw new Exception("Bu tip kumaş zaten var.\n\nEklenemez..!");
                }

                return(db.SaveGeneric <tblKumas>(tbl));
            }
            else
            {
                return(db.UpdateGeneric <tblKumas>(tbl));
            }
        }
Example #5
0
        /// <summary>
        /// Atkı girişleri tezgah planlarını öteler.
        /// </summary>
        /// <param name="atkiGiris">Atkı girişi, ilgili tarihteki plan metresinin yarısının %20 fazlasından az ise tezgahtaki planlar 1 gün ötelenir.</param>
        /// <returns></returns>
        public int TezgahPlanOtele(tblTezgahAtkiGiris atkiGiris)
        {
            tblPlanlama plan = db.GetGeneric <tblPlanlama>(c => c.TezgahId == atkiGiris.TezgahId && c.Tarih == atkiGiris.Tarih && c.TipId == atkiGiris.TipId).FirstOrDefault();

            if (plan == null)
            {
                return(1);
            }
            tblKumas tip = db.GetGeneric <tblKumas>(c => c.Id == atkiGiris.TipId).FirstOrDefault();

            double?dokMetre = null;
            int    fark     = atkiGiris.AtkiBitis - atkiGiris.AtkiBaslangic;

            if (tip.AtkiSiklik.HasValue)
            {
                dokMetre = fark * 1000 * 2 / (tip.AtkiSiklik.Value * 100);
            }

            if (dokMetre.HasValue == false)
            {
                return(0);
            }

            if (dokMetre < (plan.Miktar / 2) + (plan.Miktar * 0.2))
            {
                int snc = this.TezgahPlanOtele(atkiGiris.TezgahId, atkiGiris.Tarih.Value, 1, atkiOtelemesiMi: true);
                if (snc == 1)
                {
                    atkiGiris.PlanOteledi = true;
                    db.UpdateGeneric <tblTezgahAtkiGiris>(atkiGiris);
                }
                return(snc);
            }

            return(1);
        }
Example #6
0
        public static tblKumas KumasTipGetir(string kodu)
        {
            tblKumas kumas = null;

            if (kodu.Substring(0, 4) == "03.J")
            {
                string tipNo   = kodu.Substring(5, 5);
                string varyant = kodu.Substring(11, 3);
                kumas = new DBEvents().GetGeneric <tblKumas>(c => c.TipNo == tipNo && c.Varyant == varyant).FirstOrDefault();
            }
            else if (kodu.Substring(0, 4) == "03.Ö")
            {
                string tipNo = kodu.Substring(5, 6);
                kumas = new DBEvents().GetGeneric <tblKumas>(c => c.TipNo == tipNo).FirstOrDefault();
            }
            else
            {
                kumas = new DBEvents().GetGeneric <tblKumas>(c => c.TipNo == kodu.Substring(5, 4)).FirstOrDefault();
            }

            //if (kumas == null) kumas = new DBEvents().GetGeneric<tblKumas>(c => c.TipNo == kodu.Substring(5, 7)).FirstOrDefault();

            return(kumas);
        }
Example #7
0
        public int TezgahPlanOtele()
        {
            DateTime           atkiSonTarih = Makina.TezgahAtkiSonGirisTarihiGetir();
            List <tblPlanlama> planlar      = db.GetGeneric <tblPlanlama>(c => c.Tarih == atkiSonTarih);

            foreach (var plan in planlar)
            {
                tblKumas tip = db.GetGeneric <tblKumas>(c => c.Id == plan.TipId).FirstOrDefault();
                List <tblTezgahAtkiGiris> atkiGirisleri = db.GetGeneric <tblTezgahAtkiGiris>(c => c.Tarih == plan.Tarih && c.TezgahId == plan.TezgahId && c.TipId == plan.TipId);


                double?dokMetre = null;
                int    fark     = atkiGirisleri == null ? 0 : atkiGirisleri.Sum(c => c.AtkiBitis - c.AtkiBaslangic);
                if (tip.AtkiSiklik.HasValue)
                {
                    dokMetre = fark * 1000 * 2 / (tip.AtkiSiklik.Value * 100);
                }

                if (dokMetre.HasValue == false)
                {
                    return(0);
                }
                double?kontMetre = (plan.Miktar / 2) + (plan.Miktar * 0.2);
                kontMetre = Math.Round(kontMetre.Value, 2);

                if (dokMetre < kontMetre)
                {
                    plan.OtelemeKontrol = false;
                    plan.EksikDokuma    = kontMetre - dokMetre;

                    if (atkiGirisleri != null && atkiGirisleri.Count != 0)//&& snc == 1)
                    {
                        atkiGirisleri.ForEach(f => f.PlanOteledi = true);
                        db.UpdateGeneric <tblTezgahAtkiGiris>(atkiGirisleri);
                    }
                }
            }

            if (db.UpdateGeneric <tblPlanlama>(planlar))
            {
                planlar = db.GetGeneric <tblPlanlama>(c => c.OtelemeKontrol == false);

                var otelemeList = planlar.GroupBy(g => new { g.SiparisId, g.TezgahId, g.TipId, g.Miktar }).Select(s => new
                {
                    ToplamEksik = s.Sum(f => f.EksikDokuma),
                    TezgahId    = s.Key.TezgahId,
                    PlanMiktar  = s.Key.Miktar,
                    Tarih       = s.FirstOrDefault().Tarih
                });

                _OtelenenSiparisler = new List <int>();
                foreach (var item in otelemeList)
                {
                    if (((item.PlanMiktar / 2) + (item.PlanMiktar * 0.2)) <= item.ToplamEksik)
                    {
                        this.TezgahPlanOtele(item.TezgahId, item.Tarih, 1, true);
                    }
                }

                if (_OtelenenSiparisler != null && _OtelenenSiparisler.Count != 0)
                {
                    string idStr = "";
                    foreach (var item in _OtelenenSiparisler)
                    {
                        idStr += item.ToString() + ",";
                    }
                    idStr = idStr.TrimEnd(',');
                    //ötelenen tezgahların üzerlerindeki diğer siparişlerde ötelenmiş olduğundan bu siparişler de 1 er gün ötelendi olarak update edilmeli.
                    db.GetGenericWithSQLQuery <string>("update tblPlanlama set AtkiOtelemesi = ISNULL(AtkiOtelemesi, 0) + 1 where SiparisId in (" + idStr + ")", new object[0]);
                }
            }

            return(0);
        }