コード例 #1
0
        /// <summary>
        /// anasayfası
        /// </summary>
        public ActionResult Index()
        {
            if (CheckPerm(Perms.DepoKartı, PermTypes.Reading) == false)
            {
                return(Redirect("/"));
            }
            var mysql = db.Settings.Select(m => m.KabloSiparisMySql).FirstOrDefault();

            if (mysql)
            {
                try
                {
                    using (KabloEntities dbx = new KabloEntities())
                    {
                        ViewBag.KabloDepoID = new SelectList(dbx.depoes.OrderBy(m => m.depo1).ToList(), "id", "depo1");
                    }
                }
                catch (Exception)
                {
                    mysql = false;
                }
            }
            ViewBag.mysql = mysql;
            ViewBag.Yetki = CheckPerm(Perms.DepoKartı, PermTypes.Writing);
            return(View("Index", new Depo()));
        }
コード例 #2
0
 public JsonResult CableMovements(int ID)
 {
     if (CheckPerm(Perms.Stok, PermTypes.Reading) == false)
     {
         return(null);
     }
     using (KabloEntities dbx = new KabloEntities())
     {
         var list = dbx.harekets.Where(m => m.id == ID).OrderBy(m => m.tarih).ToList();
         return(Json(list, JsonRequestBehavior.AllowGet));
     }
 }
コード例 #3
0
        /// <summary>
        /// mysql kablo lstesini getirir
        /// </summary>
        public PartialViewResult List(int DepoID)
        {
            var depoAd = Store.Detail(DepoID).DepoAd.ToUpper();
            List <MySQLDataViewModel> data = new List <MySQLDataViewModel>();

            using (var dbx = new KabloEntities())
            {
                //MakaraNo Olmayanlar ve MakaraNo eşleşip miktarı eşit olmayanları stoklar list'ine atar
                List <string>   listYer = db.Yers.Where(m => m.DepoID == DepoID).Select(x => x.MakaraNo).ToList();
                List <kblstok2> stoklar = new List <kblstok2>();
                foreach (var item in dbx.kblstok2.Where(m => m.depo == depoAd)) //mysql stoklar üzerinde dön
                {
                    if (!listYer.Contains(item.makarano))                       //maraka no yoksa listeye ekle
                    {
                        stoklar.Add(item);
                    }
                    else//MakaraNo eşleşip miktarı eşit olmayanları
                    {
                        foreach (var itemYer in db.Yers.Where(x => x.DepoID == DepoID & x.MakaraNo.Contains(item.makarano)))
                        {
                            if (itemYer.Miktar != item.miktar)
                            {
                                stoklar.Add(item);
                            }
                        }
                    }
                }
                //add to final list
                foreach (var item in stoklar)
                {
                    data.Add(
                        new MySQLDataViewModel()
                    {
                        MySQLID  = item.id,
                        Marka    = item.marka,
                        Cins     = item.cins,
                        Kesit    = item.kesit,
                        Makara   = item.makara,
                        MakaraNo = item.makarano,
                        DepoID   = item.depo,
                        Miktar   = item.miktar.Value
                    });
                }
            }
            return(PartialView("List", data));
        }
コード例 #4
0
        /// <summary>
        /// düzenle
        /// </summary>
        public PartialViewResult StoreDetailPartial(string Id)
        {
            if (CheckPerm(Perms.DepoKartı, PermTypes.Reading) == false)
            {
                return(null);
            }
            var item = Convert.ToInt16(Id == "" ? "0" : Id) > 0 ? Store.Detail(Convert.ToInt16(Id)) : new Depo()
            {
                Aktif = false
            };
            var mysql = db.Settings.Select(m => m.KabloSiparisMySql).FirstOrDefault();

            if (mysql)
            {
                using (KabloEntities dbx = new KabloEntities())
                {
                    ViewBag.KabloDepoID = new SelectList(dbx.depoes.OrderBy(m => m.depo1).ToList(), "id", "depo1", item.KabloDepoID);
                }
            }

            ViewBag.mysql = mysql;
            ViewBag.Yetki = CheckPerm(Perms.DepoKartı, PermTypes.Writing);
            return(PartialView("_StoreDetailPartial", item));
        }
コード例 #5
0
        public JsonResult ManualCorrection(Yer tbl, bool GC)
        {
            if (CheckPerm(Perms.Stok, PermTypes.Writing) == false || tbl.Miktar < 0)
            {
                return(Json(false, JsonRequestBehavior.AllowGet));
            }
            Result sonuc;

            if (tbl.MakaraNo == "" || tbl.MakaraNo == null)
            {
                var kkablo = db.Database.SqlQuery <string>(string.Format(@"
                SELECT Kod1 FROM FINSAT6{0}.FINSAT6{0}.STK WITH(NOLOCK) WHERE (MalKodu = '{1}')", vUser.SirketKodu, tbl.MalKodu)).FirstOrDefault();
                if (kkablo == "KKABLO")
                {
                    return(Json(new Result(false, "Makara no girilmelidir."), JsonRequestBehavior.AllowGet));
                }
            }

            if (GC == false)
            {
                #region Giriş İşlemleri

                if (tbl.MakaraNo == "" || tbl.MakaraNo == null)
                {
                    var tmp2 = Yerlestirme.Detail(tbl.KatID, tbl.MalKodu, tbl.Birim);
                    if (tmp2 == null)
                    {
                        tmp2 = new Yer()
                        {
                            KatID       = tbl.KatID,
                            MalKodu     = tbl.MalKodu,
                            Birim       = tbl.Birim,
                            Miktar      = tbl.Miktar,
                            MakaraDurum = true
                        };
                        sonuc = Yerlestirme.Insert(tmp2, vUser.Id, "Stok Elle Düzeltme");
                        if (sonuc.Status == false)
                        {
                            return(Json(new Result(false, sonuc.Message), JsonRequestBehavior.AllowGet));
                        }
                    }
                    else
                    {
                        tmp2.Miktar += tbl.Miktar;
                        sonuc        = Yerlestirme.Update(tmp2, vUser.Id, "Stok Elle Düzeltme", tbl.Miktar, false);
                        if (sonuc.Status == false)
                        {
                            return(Json(new Result(false, sonuc.Message), JsonRequestBehavior.AllowGet));
                        }
                    }
                }
                else
                {
                    var tmp2 = db.Yers.Where(m => m.DepoID == tbl.DepoID && m.MakaraNo == tbl.MakaraNo).FirstOrDefault();
                    if (tmp2 == null)
                    {
                        tmp2 = new Yer()
                        {
                            KatID       = tbl.KatID,
                            MalKodu     = tbl.MalKodu,
                            MakaraNo    = tbl.MakaraNo,
                            Birim       = tbl.Birim,
                            Miktar      = tbl.Miktar,
                            MakaraDurum = true
                        };
                        sonuc = Yerlestirme.Insert(tmp2, vUser.Id, "Stok Elle Düzeltme");
                        if (sonuc.Status == false)
                        {
                            return(Json(new Result(false, sonuc.Message), JsonRequestBehavior.AllowGet));
                        }
                    }
                    else
                    {
                        return(Json(new Result(false, "Bu makara no kullanılmaktadır"), JsonRequestBehavior.AllowGet));
                    }
                }
                #endregion
            }
            else
            {
                #region Çıkış İşlemleri

                var tmp2 = Yerlestirme.Detail(tbl.KatID, tbl.MalKodu, "", tbl.MakaraNo);
                if (tmp2 == null)
                {
                    return(Json(new Result(false, "Seçili yerde bu ürün bulunamadı."), JsonRequestBehavior.AllowGet));
                }
                if (tmp2.Miktar < tbl.Miktar)
                {
                    return(Json(new Result(false, "Seçili yerde çıkış yapılmak istenilen sayıda ürün yok"), JsonRequestBehavior.AllowGet));
                }
                tmp2.Miktar -= tbl.Miktar;
                sonuc        = Yerlestirme.Update(tmp2, vUser.Id, "Stok Elle Düzeltme", tbl.Miktar, true);
                if (sonuc.Status == false)
                {
                    return(Json(new Result(false, sonuc.Message), JsonRequestBehavior.AllowGet));
                }

                #endregion
            }

            // add to mysql
            if (db.Settings.FirstOrDefault().KabloSiparisMySql == true)
            {
                #region Mysql İşlemleri

                string sql = "";

                if (vUser.SirketKodu == "33")
                {
                    sql = string.Format(@"
                SELECT FINSAT6{0}.FINSAT6{0}.STK.MalAdi4 as Marka, FINSAT6{0}.FINSAT6{0}.STK.Nesne2 as Cins, FINSAT6{0}.FINSAT6{0}.STK.Kod15 as Kesit,
                '' AS Renk
                FROM FINSAT6{0}.FINSAT6{0}.STK
                WHERE (FINSAT6{0}.FINSAT6{0}.STK.Kod1 = 'KKABLO') AND (FINSAT6{0}.FINSAT6{0}.STK.MalKodu = '{1}')", vUser.SirketKodu, tbl.MalKodu);
                }
                else
                {
                    sql = string.Format(@"
                SELECT FINSAT6{0}.FINSAT6{0}.STK.MalAdi4 as Marka, FINSAT6{0}.FINSAT6{0}.STK.Nesne2 as Cins, FINSAT6{0}.FINSAT6{0}.STK.Kod16 as Kesit,
                FINSAT6{0}.FINSAT6{0}.STK.Kod15 as Renk
                FROM FINSAT6{0}.FINSAT6{0}.STK
                WHERE (FINSAT6{0}.FINSAT6{0}.STK.Kod1 = 'KKABLO') AND (FINSAT6{0}.FINSAT6{0}.STK.MalKodu = '{1}')", vUser.SirketKodu, tbl.MalKodu);
                }

                var stks = db.Database.SqlQuery <frmCableStk>(sql).FirstOrDefault();
                if (stks != null)
                {
                    using (KabloEntities dbx = new KabloEntities())
                    {
                        string depo;
                        var    kbldepoID = db.Depoes.Where(m => m.ID == tbl.DepoID).Select(m => m.KabloDepoID).FirstOrDefault();
                        if (kbldepoID == null)
                        {
                            depo = dbx.depoes.Select(m => m.depo1).FirstOrDefault();
                        }
                        else
                        {
                            depo = dbx.depoes.Where(m => m.id == kbldepoID).Select(m => m.depo1).FirstOrDefault();
                        }
                        try
                        {
                            if (GC == false)
                            {
                                // sid bul
                                var sid = dbx.indices.Where(m => m.cins == stks.Cins && m.kesit == stks.Kesit).FirstOrDefault();
                                if (sid == null)
                                {
                                    sid = new index()
                                    {
                                        cins = stks.Cins, kesit = stks.Kesit, agirlik = 0
                                    };
                                    dbx.indices.Add(sid);
                                    dbx.SaveChanges();
                                }
                                // stoğa kaydet
                                var tbls = new stok()
                                {
                                    marka    = stks.Marka,
                                    cins     = stks.Cins,
                                    kesit    = stks.Kesit,
                                    sid      = sid.id,
                                    depo     = depo,
                                    renk     = stks.Renk,
                                    makara   = "KAPALI",
                                    rezerve  = "0",
                                    sure     = new TimeSpan(),
                                    tarih    = DateTime.Now,
                                    tip      = "",
                                    rmiktar  = 0,
                                    miktar   = tbl.Miktar,
                                    makarano = tbl.MakaraNo
                                };
                                dbx.stoks.Add(tbls);
                            }
                            else
                            {
                                // makarayı bul
                                var kablo = dbx.stoks.Where(m => m.depo == depo && m.makarano == tbl.MakaraNo).FirstOrDefault();
                                if (kablo != null)
                                {
                                    // kabloya açık yap
                                    if (kablo.miktar != tbl.Miktar)
                                    {
                                        kablo.makara = "AÇIK";
                                    }
                                    // yeni hareket ekle
                                    var tblh = new hareket()
                                    {
                                        id         = kablo.id,
                                        miktar     = tbl.Miktar,
                                        musteri    = "Stok Elle Düzeltme",
                                        tarih      = DateTime.Now,
                                        kaydigiren = vUser.FullName
                                    };
                                    dbx.harekets.Add(tblh);
                                }
                            }
                            dbx.SaveChanges();
                        }
                        catch (Exception ex)
                        {
                            Logger(ex, "Stock/ManualCorrection");
                        }
                    }
                }
                #endregion
            }

            // return
            return(Json(new Result(true), JsonRequestBehavior.AllowGet));
        }