コード例 #1
0
ファイル: CihazMalzeme.cs プロジェクト: tolgakaya/BilgitapISP
        public void FiyatGuncelle(int cihazid, decimal fiyat)
        {
            cihaz_stoks c = dc.cihaz_stoks.FirstOrDefault(x => x.cihaz_id == cihazid);

            if (c != null)
            {
                c.satis_fiyati = fiyat;
                KaydetmeIslemleri.kaydetR(dc);
            }
        }
コード例 #2
0
        public void StokGuncelle(decimal stok, int cihazid, decimal birim_maliyet, bool sinir)
        {
            cihaz_stoks cs = dc.cihaz_stoks.FirstOrDefault(x => x.cihaz_id == cihazid);

            decimal simdikiStok   = cs.bakiye;
            decimal simdikiGiris  = cs.giris;
            decimal simdikiBakiye = cs.bakiye;

            decimal girilecek = 0;
            decimal cikilacak = 0;

            if (stok > simdikiBakiye)
            {
                //yeni giriş yapılacak
                decimal fark = stok - simdikiBakiye;
                girilecek = fark;
            }
            else if (stok < simdikiBakiye)
            {
                //çıkış yapılacak
                decimal fark = simdikiBakiye - stok;
                cikilacak = fark;
            }


            cs.bakiye          = stok;
            cs.cikis          += cikilacak;
            cs.giris          += girilecek;
            cs.son_alis_fiyati = birim_maliyet;
            //cihaz fifonun da güncellenmesi gerek
            //bunun için varsa daha önceki bakiyesi olan bütün fifolar iptal edilir
            //ve yukarıdaki bakiye bilgisi fioya ogünün tarihi ile girilir
            var fifos = dc.cihaz_fifos.Where(x => x.cihaz_id == cihazid && x.bakiye > 0 && x.iptal == false);

            foreach (var f in fifos)
            {
                f.iptal = true;
            }

            cihaz_fifos cf = new cihaz_fifos();

            cf.cihaz_id = cihazid;
            cf.cikis    = 0;
            cf.fiyat    = birim_maliyet;
            cf.giris    = stok;
            cf.bakiye   = stok;
            cf.tarih    = DateTime.Now;
            cf.sinirsiz = sinir;
            cf.iptal    = false;
            dc.cihaz_fifos.Add(cf);
            KaydetmeIslemleri.kaydetR(dc);
        }