/// <summary> /// Malzemenin stoktaki mevcut miktarını ana biriminden dönderir. /// </summary> /// <param name="malzemeId">Stok durumu sorulan malzemenin id'si</param> /// <returns></returns> public double StokMiktariGetir(int malzemeId) { vMalzemeStokDurum stok = db.GetGeneric <vMalzemeStokDurum>(c => c.MalzemeId == malzemeId).FirstOrDefault(); return(stok != null ? stok.MevcutStok : 0); }
internal List <vMalzemeStokDurum> TipIplikIhtiyaclariGetir(vKumas kumas) { List <vMalzemeStokDurum> iplikIhtiyac = new List <vMalzemeStokDurum>(); //atkı için iplik ihtiyaç hesaplanıyor if (kumas.Atki1.HasValue) { tblMalzemeler iplik = new vMalzemeler().IplikGetir(kumas.Atki1.Value); iplikIhtiyac.Add(new vMalzemeStokDurum() { MalzemeId = kumas.Atki1.Value, MalzemeBagId = iplik.BaglantiId, MalzemeAdi = iplik.Adi, MalzemeKodu = iplik.Kodu, MinStok = Math.Round((this.DokumaMetre * (kumas.Atki1UstuGr.HasValue ? kumas.Atki1UstuGr.Value : 0)), 4) }); } //zemin için iplik ihtiyaç hesaplanıyor if (kumas.Zemin1.HasValue) { double zeminMetre = this.AltZeminMetre * ((kumas.ZeminCozguTel.HasValue ? kumas.ZeminCozguTel.Value : 0) + (kumas.KenarCozguTel.HasValue ? kumas.KenarCozguTel.Value : 0)); tblMalzemeler iplik = new vMalzemeler().IplikGetir(kumas.Zemin1.Value); vMalzemeStokDurum ihtiyac = new vMalzemeStokDurum() { MalzemeAdi = iplik.Adi, MalzemeId = kumas.Zemin1.Value, MalzemeKodu = iplik.Kodu, MalzemeBagId = iplik.BaglantiId, }; if (iplik == null || iplik.IplikNo.HasValue == false) { ihtiyac.MinStok = 0; } else { switch (iplik.Cins) { case "Denye": ihtiyac.MinStok = (zeminMetre / (9000 / iplik.IplikNo.Value)) / 1000; break; case "Dtex": ihtiyac.MinStok = zeminMetre / (10000 / iplik.IplikNo.Value) / 1000; break; case "Nm": ihtiyac.MinStok = (zeminMetre / iplik.IplikNo.Value) / 1000; break; case "Ne": ihtiyac.MinStok = (zeminMetre / iplik.IplikNo.Value) / 1693; break; default: ihtiyac.MinStok = 0; break; } ihtiyac.MinStok = Math.Round(ihtiyac.MinStok, 4); } iplikIhtiyac.Add(ihtiyac); } //hav için iplik ihtiyaç if (kumas.Hav1.HasValue) { double havMetre = this.HavMetre * (kumas.HavCozguTel.HasValue ? kumas.HavCozguTel.Value : 0); tblMalzemeler iplik = new vMalzemeler().IplikGetir(kumas.Hav1.Value); vMalzemeStokDurum ihtiyac = new vMalzemeStokDurum() { MalzemeAdi = iplik.Adi, MalzemeId = kumas.Hav1.Value, MalzemeKodu = iplik.Kodu, MalzemeBagId = iplik.BaglantiId, }; if (iplik == null || iplik.IplikNo.HasValue == false) { ihtiyac.MinStok = 0; } else { switch (iplik.Cins) { case "Denye": ihtiyac.MinStok = (havMetre / (9000 / iplik.IplikNo.Value)) / 1000; break; case "Dtex": ihtiyac.MinStok = havMetre / (10000 / iplik.IplikNo.Value) / 1000; break; case "Nm": ihtiyac.MinStok = (havMetre / iplik.IplikNo.Value) / 1000; break; case "Ne": ihtiyac.MinStok = (havMetre / iplik.IplikNo.Value) / 1693; break; default: ihtiyac.MinStok = 0; break; } ihtiyac.MinStok = Math.Round(ihtiyac.MinStok, 4); } iplikIhtiyac.Add(ihtiyac); } return(iplikIhtiyac); }