Exemplo n.º 1
0
        public bool CreateReceiveItem(FrunutStockEntities db, ReceiveItem receiveItem)
        {
            bool result = false;

            using (var dbContextTransaction = db.Database.BeginTransaction())
            {
                var itemWarehouse = db.ItemWarehouses.Where(i => i.ItemID == receiveItem.ItemID && i.WarehouseID == receiveItem.WarehouseID).FirstOrDefault();
                var item          = db.Items.Where(i => i.ID == receiveItem.ItemID).FirstOrDefault();
                try
                {
                    if (itemWarehouse == null)
                    {
                        ItemWarehouse iw = AddItemWarehouse(receiveItem, item);
                        db.ItemWarehouses.Add(iw);
                    }
                    else
                    {
                        UpdateItemWarehouse(itemWarehouse, receiveItem, item, 1);
                        db.Entry(itemWarehouse).State = EntityState.Modified;
                    }

                    db.ReceiveItems.Add(receiveItem);

                    db.SaveChanges();
                    dbContextTransaction.Commit();
                    result = true;
                }
                catch (Exception err)
                {
                    dbContextTransaction.Rollback();
                    result = false;
                }
            }
            return(result);
        }
Exemplo n.º 2
0
        public bool EditReceiveItem(FrunutStockEntities db, ReceiveItem receiveItem)
        {
            bool result = false;

            using (var dbContextTransaction = db.Database.BeginTransaction())
            {
                var oldReceiveItem = db.ReceiveItems.Find(receiveItem.ID);

                try
                {
                    if (oldReceiveItem == null)
                    {
                        throw new System.InvalidOperationException("Could't find old values.");
                    }

                    var oldItemWarehouse = db.ItemWarehouses.Where(i => i.ItemID == oldReceiveItem.ItemID && i.WarehouseID == oldReceiveItem.WarehouseID).FirstOrDefault();
                    var oldItem          = db.Items.Where(i => i.ID == oldReceiveItem.ItemID).FirstOrDefault();
                    if (oldItemWarehouse == null)
                    {
                        throw new System.InvalidOperationException("Could't find old values.");
                    }


                    UpdateItemWarehouse(oldItemWarehouse, oldReceiveItem, oldItem, -1);
                    db.Entry(oldItemWarehouse).State = EntityState.Modified;
                    db.SaveChanges();

                    var itemWarehouse = db.ItemWarehouses.Where(i => i.ItemID == receiveItem.ItemID && i.WarehouseID == receiveItem.WarehouseID).FirstOrDefault();
                    var item          = db.Items.Where(i => i.ID == receiveItem.ItemID).FirstOrDefault();
                    if (itemWarehouse == null)
                    {
                        ItemWarehouse iw = AddItemWarehouse(receiveItem, item);
                        db.ItemWarehouses.Add(iw);
                    }
                    else
                    {
                        UpdateItemWarehouse(itemWarehouse, receiveItem, item, 1);
                    }
                    db.Entry(oldReceiveItem).State = EntityState.Detached;
                    db.Entry(receiveItem).State    = EntityState.Modified;
                    db.SaveChanges();
                    dbContextTransaction.Commit();
                    result = true;
                }
                catch (Exception err)
                {
                    // UpdateItemWarehouse(itemWarehouse, receiveItem, -1);
                    dbContextTransaction.Rollback();
                    result = false;
                }
            }
            return(result);
        }
Exemplo n.º 3
0
        public void TestContext()
        {
            // arrange
            var context = new FrunutStockEntities();


            // act
            var companies = context.Companies.Count();

            // assert

            Assert.AreEqual(2, companies, "Account not debited correctly");
        }
Exemplo n.º 4
0
        public bool CheckRelatedRecords(FrunutStockEntities db, string tableName, string foreignKeyName, Int64 id)
        {
            var tables = db.Database.SqlQuery <string>("Select OBJECT_NAME(parent_object_Id) from sys.foreign_keys where object_name(referenced_object_id) = '" + tableName + "'").ToList();

            foreach (var table in tables)
            {
                var related = db.Database.SqlQuery <Int64>("select " + foreignKeyName + " from " + table + " where " + foreignKeyName + " = " + id + "").Count();//.FirstOrDefault();
                if (related > 0)
                {
                    return(true);
                }
            }
            return(false);
        }
Exemplo n.º 5
0
 public void TestAddCompany()
 {
     using (var context = new FrunutStockEntities())
     {
         Company Company = new Company()
         {
             Name         = "Zarif Zarifov",
             AddedDate    = DateTime.Now,
             ModifiedDate = DateTime.Now,
             UserName     = "******",
         };
         context.Entry(Company).State = System.Data.Entity.EntityState.Added;
         context.SaveChanges();
     }
 }
Exemplo n.º 6
0
 public FrunutStockEntities Init()
 {
     return(dbContext ?? (dbContext = new FrunutStockEntities()));
     //The ?? operator is called the null-coalescing operator. It returns the left-hand operand if the operand is not null; otherwise it returns the right hand operand.
 }