예제 #1
0
파일: Siparis.cs 프로젝트: isdMehmet/LKERP
        public bool SiparisKaydet(ref vSiparisler siparis, int kullaniciId)
        {
            tblSiparisler tblSip = vSiparisler.ViewToTable(siparis);

            tblSip.GuncelleyenPersId = kullaniciId;
            try
            {
                tblSip.OrderSayi = Convert.ToInt32(tblSip.OrderNo.Substring(tblSip.OrderNo.IndexOf('-') + 1));
            }
            catch { }

            if (tblSip.KapanmaTarihi.HasValue == false && tblSip.Durum == "Tamamlandı")
            {
                tblSip.KapanmaTarihi  = DateTime.Now;
                siparis.KapanmaTarihi = DateTime.Now;
            }
            else if (tblSip.Durum != "Tamamlandı")
            {
                tblSip.KapanmaTarihi  = null;
                siparis.KapanmaTarihi = null;
            }

            if (siparis.Id == 0)
            {
                int           bagId  = siparis.BaglantiId;
                tblSiparisler sipTip = db.GetGeneric <tblSiparisler>(c => c.Id == bagId).FirstOrDefault();

                tblBelgeNo belgeNo    = tblBelgeNo.BelgeNoGetir(sipTip == null ? "" : sipTip.BelgeTuru);
                string     strNumara  = (belgeNo.SonBelgeNo + 1).ToString("00000");
                string     belgeNoStr = belgeNo.Tipi + " " + DateTime.Now.ToString("yy") + "/" + strNumara;

                siparis.SozlesmeNo = belgeNoStr;
                tblSip.SozlesmeNo  = belgeNoStr;
                belgeNo.SonBelgeNo = belgeNo.SonBelgeNo + 1;
                belgeNo.Yil        = DateTime.Now.Year;
                tblBelgeNo.BelgeNoKaydet(belgeNo);

                bool snc = db.SaveGeneric <tblSiparisler>(ref tblSip);
                siparis.Id = tblSip.Id;

                return(snc);
            }

            else
            {
                return(db.UpdateGeneric <tblSiparisler>(tblSip));
            }
        }
예제 #2
0
        public bool Kaydet()
        {
            if (_Belge.Durum != "Amir Onayı" && _Belge.Durum != "Satın Al" && _Belge.TedarikciId.HasValue == false)
            {
                throw new Exception("Tedarikçi boş geçilemez..!");
            }

            tblTalepKarsilama belge = _Belge.ViewToTable();

            if (_Belge.Id == 0)
            {
                tblBelgeNo belgeNo    = tblBelgeNo.BelgeNoGetir("SA");
                string     strNumara  = (belgeNo.SonBelgeNo + 1).ToString("0000");
                string     belgeNoStr = belgeNo.Tipi + " " + DateTime.Now.ToString("yy") + "/" + strNumara;

                belge.No  = belgeNoStr;
                _Belge.No = belgeNoStr;

                if (db.SaveGeneric <tblTalepKarsilama>(ref belge))
                {
                    _Belge.Id = belge.Id;
                    belgeNo.SonBelgeNo++;
                    tblBelgeNo.BelgeNoKaydet(belgeNo);
                }
                else
                {
                    return(false);
                }
            }
            else if (db.UpdateGeneric <tblTalepKarsilama>(belge) == false)
            {
                return(false);
            }

            vTalepKarsilamaAct depokontrol = _Talepler.Find(c => c.DepoGirisMiktar > c.OnayMiktar);

            if (depokontrol != null)
            {
                throw new Exception("Depo girişi onaylanan miktardan fazla olamaz.\n\nMalzeme : " + depokontrol.MalzemeAdi +
                                    "\nOnay Miktarı : " + depokontrol.OnayMiktar.ToString() + "\nDepo Girişi : " + depokontrol.DepoGirisMiktar.ToString());
            }

            List <tblTalepKarsilamaAct> saveList = vTalepKarsilamaAct.ViewToTbl(this._Talepler.FindAll(f => f.Id == 0));

            saveList.ForEach(c => c.TalepKarsilamaId = _Belge.Id);
            List <tblTalepKarsilamaAct> updList = vTalepKarsilamaAct.ViewToTbl(this._Talepler.FindAll(f => f.Id != 0));

            if (db.SaveGeneric <tblTalepKarsilamaAct>(saveList) == false)
            {
                throw new Exception("Hata oluştu.\n\nKaydetme başarısız..!");
            }
            if (db.UpdateGeneric <tblTalepKarsilamaAct>(updList) == false)
            {
                throw new Exception("Hata oluştu.\n\nKaydetme başarısız..!");
            }

            this._Talepler = db.GetGeneric <vTalepKarsilamaAct>(c => c.TalepKarsilamaId == _Belge.Id);

            if (_Belge.Durum == "Depo" || _Belge.Durum == "Tamamlandı")
            {
                if (StokGirisleriYap() == false)
                {
                    throw new Exception("Stok girişleri yapılamadı..!");
                }
            }

            return(true);
        }