/// <summary>
        /// listeyi günceller
        /// </summary>
        public PartialViewResult GridPartial(int ID)
        {
            if (CheckPerm(Perms.MalKabul, PermTypes.Reading) == false)
            {
                return(null);
            }
            var list = IrsaliyeDetay.GetList(ID);
            var irs  = Irsaliye.Detail(ID);

            ViewBag.IrsaliyeId = ID;
            ViewBag.Onay       = irs.Onay;
            ViewBag.Yetki      = CheckPerm(Perms.MalKabul, PermTypes.Writing);
            return(PartialView("_GridPartial", list));
        }
        public PartialViewResult New(frmIrsaliye tbl)
        {
            if (CheckPerm(Perms.MalKabul, PermTypes.Reading) == false)
            {
                ViewBag.message = "Burası için izniniz yok";
                return(PartialView("_GridPartial", new List <IRS_Detay>()));
            }

            if (tbl.EvrakNo.Length > 16)
            {
                ViewBag.message = "Bu evrak no çok uzun";
                return(PartialView("_GridPartial", new List <IRS_Detay>()));
            }

            var kontrol1 = DateTime.TryParse(tbl.Tarih, out DateTime tmpTarih);

            if (kontrol1 == false)
            {
                db.Logger(vUser.UserName, "", fn.GetIPAddress(), "Tarih hatası: " + tbl.Tarih, "", "WMS/Purchase/New");
                ViewBag.message = "Tarih yanlış";
                return(PartialView("_GridPartial", new List <IRS_Detay>()));
            }

            var tarih    = tmpTarih.ToOADateInt();
            var kontrol2 = db.IRS.Where(m => m.IslemTur == false && m.EvrakNo == tbl.EvrakNo && m.SirketKod == vUser.SirketKodu & m.HesapKodu == tbl.HesapKodu).FirstOrDefault();

            // var olanı göster
            if (kontrol2 != null)
            {
                if (kontrol2.DepoID != tbl.DepoID)
                {
                    ViewBag.message = "Bu evrak no kullanılıyor";
                    return(PartialView("_GridPartial", new List <IRS_Detay>()));
                }

                try
                {
                    var list = IrsaliyeDetay.GetList(kontrol2.ID);
                    ViewBag.IrsaliyeId = kontrol2.ID;
                    ViewBag.Onay       = kontrol2.Onay;
                    ViewBag.Yetki      = CheckPerm(Perms.MalKabul, PermTypes.Writing);
                    return(PartialView("_GridPartial", list));
                }
                catch (Exception ex)
                {
                    Logger(ex, "WMS/Purchase/New-varolan");
                    return(null);
                }
            }

            // kontrol
            if (CheckPerm(Perms.MalKabul, PermTypes.Writing) == false)
            {
                return(null);
            }
            // yeni kayıtta evrak no spide olmayacak kontrolü
            var sql = string.Format("SELECT EvrakNo FROM FINSAT6{0}.FINSAT6{0}.STI WHERE (EvrakNo = '{1}') AND (KynkEvrakTip = 3) AND (Chk = '{2}')", vUser.SirketKodu, tbl.EvrakNo, tbl.HesapKodu);
            var sti = db.Database.SqlQuery <string>(sql).FirstOrDefault();

            if (sti != null)
            {
                ViewBag.message = "Bu evrak no kullanılıyor";
                return(PartialView("_GridPartial", new List <IRS_Detay>()));
            }

            // yeni kayıt
            var gorevno = db.SettingsGorevNo(DateTime.Today.ToOADateInt(), tbl.DepoID).FirstOrDefault();
            var today   = fn.ToOADate();
            var time    = fn.ToOATime();

            try
            {
                var cevap = db.InsertIrsaliye(vUser.SirketKodu, tbl.DepoID, gorevno, tbl.EvrakNo, tarih, "Tedarikçi: " + tbl.Unvan, false, ComboItems.MalKabul.ToInt32(), vUser.UserName, today, time, tbl.HesapKodu, "", 0, "", "").FirstOrDefault();
                LogActions("WMS", "Purchase", "New", ComboItems.alEkle, cevap.GorevID.Value, "Tedarikçi: " + tbl.Unvan);
                // get list
                var list = IrsaliyeDetay.GetList(cevap.IrsaliyeID.Value);
                ViewBag.IrsaliyeId = cevap.IrsaliyeID;
                ViewBag.Onay       = false;
                ViewBag.Yetki      = CheckPerm(Perms.MalKabul, PermTypes.Writing);
                return(PartialView("_GridPartial", list));
            }
            catch (Exception ex)
            {
                Logger(ex, "WMS/Purchase/New-yeni");
                return(null);
            }
        }