예제 #1
0
        public void AddToExistingPurchase(skStock StockOb, int PurchaseID, int UserID)
        {
            dtStockDetail newdetails = new dtStockDetail
            {
                PurchaseValue = StockOb.purchasedvalue
            };

            dtStock newstock = new dtStock
            {
                CategoryID  = StockOb.CategoryObject.StockTypeID,
                ItemDesc    = StockOb.Description,
                ItemTitle   = StockOb.Name,
                ValueBandID = StockOb.ValueBandObject.ID,
                Batch       = 0,
                Sold        = false,
                CreatedBy   = UserID,
                Created     = DateTime.Now,
                PurchaseID  = PurchaseID,
            };

            newstock.dtStockDetails.Add(newdetails);

            DB.dtStocks.InsertOnSubmit(newstock);
            DB.SubmitChanges();

            dtPurchese purchase = DB.dtPurcheses.Single(x => x.pID == PurchaseID);

            purchase.PurchesedValue += StockOb.purchasedvalue;

            DB.SubmitChanges();
        }
예제 #2
0
        public void LinkTranToStock(ITransaction TransactionObject, skStock StockOBJ, int UserID)
        {
            dtStock       StockObj    = DB.dtStocks.Single(x => x.sID == StockOBJ.Stockid);
            dtStockDetail StockDetais = DB.dtStockDetails.Single(x => x.StockID == StockOBJ.Stockid);

            switch (TransactionObject.TransactionType)
            {
            case TransactionType.Sale:
                StockDetais.SaleValue = StockOBJ.SaleValue;
                dtSale SaleObj = DB.dtSales.Single(x => x.tID == TransactionObject.ID);
                SaleObj.SoldValue += StockDetais.SaleValue;
                StockObj.SaleID    = TransactionObject.ID;
                CreateNewStockStatus(StockOBJ.Stockid, "Linked To sale " + SaleObj.tID, UserID, Convert.ToDecimal(StockOBJ.SaleValue));
                break;

            case TransactionType.Purchase:
                StockDetais.PurchaseValue = StockOBJ.purchasedvalue;
                dtPurchese PurchaseObj = DB.dtPurcheses.Single(x => x.pID == TransactionObject.ID);
                PurchaseObj.PurchesedValue += StockDetais.PurchaseValue;
                StockObj.PurchaseID         = TransactionObject.ID;
                CreateNewStockStatus(StockOBJ.Stockid, "Linked To Purchase " + PurchaseObj.pID, UserID, Convert.ToDecimal(StockOBJ.purchasedvalue));
                break;
            }

            DB.SubmitChanges();
        }
예제 #3
0
        public void AddNewPurchase(skPurchase PurchaseOb, int UserID)
        {
            dtPurchese newpurchase = new dtPurchese
            {
                ItemTitle       = PurchaseOb.Title,
                ItemDescription = PurchaseOb.Description,
                PurchesedValue  = PurchaseOb.Amount,
                ShippingCosts   = PurchaseOb.Postage,
                InvoiceID       = PurchaseOb.Invoice,
                Purchesed_Date  = PurchaseOb.PurchaseDate,
                AddedBy         = UserID,
                VendorID        = PurchaseOb.VendorObject.VendorID,
                IsExpense       = PurchaseOb.IsExpense,
                Created         = DateTime.Now,
                Updated         = DateTime.Now
            };

            DB.dtPurcheses.InsertOnSubmit(newpurchase);
            DB.SubmitChanges();

            decimal pVALUE   = System.Math.Abs(Convert.ToDecimal(PurchaseOb.Amount)) * (-1);
            decimal pPOSTAGE = System.Math.Abs(PurchaseOb.Postage) * (-1);
            int     pID      = TopPurchase();

            dtTransactionLedger newpurchaseledger = new dtTransactionLedger
            {
                PurchaseID          = pID,
                TransactionType     = "Purchase",
                TotelAmount         = pVALUE,
                SaleID              = null,
                TransactionDateTime = Convert.ToDateTime(PurchaseOb.PurchaseDate)
            };

            dtTransactionLedger newshippingledger = new dtTransactionLedger
            {
                PurchaseID          = pID,
                TransactionType     = "Shipping",
                TotelAmount         = pPOSTAGE,
                SaleID              = null,
                TransactionDateTime = Convert.ToDateTime(PurchaseOb.PurchaseDate)
            };

            DB.dtTransactionLedgers.InsertOnSubmit(newpurchaseledger);
            DB.dtTransactionLedgers.InsertOnSubmit(newshippingledger);
            DB.SubmitChanges();
        }
예제 #4
0
        public void UpdatePurchase(skPurchase PurchaseObject)
        {
            dtPurchese PurchaseToUpdate = DB.dtPurcheses.Single(x => x.pID == PurchaseObject.ID);

            if (PurchaseToUpdate != null)
            {
                PurchaseToUpdate.ItemTitle       = PurchaseObject.Title;
                PurchaseToUpdate.ItemDescription = PurchaseObject.Description;
                PurchaseToUpdate.ShippingCosts   = PurchaseObject.Postage;
                PurchaseToUpdate.Purchesed_Date  = PurchaseObject.PurchaseDate;

                PurchaseToUpdate.Updated = DateTime.Now;

                DB.SubmitChanges();
            }
            else
            {
                throw new Exception("Purchase record doesnt exist within the Database.");
            }
        }
예제 #5
0
        public void AddNewStockItem(skStock StockOb, skPurchase PurchaseOb, int UserID)
        {
            dtPurchese newpurchase = new dtPurchese
            {
                ItemTitle       = StockOb.Name,
                ItemDescription = StockOb.Description,
                PurchesedValue  = PurchaseOb.Amount,
                ShippingCosts   = PurchaseOb.Postage,
                InvoiceID       = PurchaseOb.Invoice,
                Purchesed_Date  = PurchaseOb.PurchaseDate,
                AddedBy         = UserID,
                VendorID        = PurchaseOb.VendorObject.VendorID,
                IsExpense       = false,
                Created         = DateTime.Now,
                Updated         = DateTime.Now
            };

            dtStock newstock = new dtStock
            {
                CategoryID  = StockOb.CategoryObject.StockTypeID,
                ItemDesc    = StockOb.Description,
                ItemTitle   = StockOb.Name,
                ValueBandID = StockOb.ValueBandObject.ID,
                Batch       = 0,
                Sold        = false,
                CreatedBy   = UserID,
                Created     = DateTime.Now,
                dtPurchese  = newpurchase
            };

            dtStockDetail newdetails = new dtStockDetail
            {
                PurchaseValue = StockOb.purchasedvalue
            };

            newstock.dtStockDetails.Add(newdetails);
            DB.dtStocks.InsertOnSubmit(newstock);
            DB.SubmitChanges();

            decimal pVALUE   = System.Math.Abs(Convert.ToDecimal(PurchaseOb.Amount)) * (-1);
            decimal pPOSTAGE = System.Math.Abs(PurchaseOb.Postage) * (-1);
            int     pID      = TopPurchase();
            int?    stockID  = GetTop1MostrecentSid();

            dtStockHistory newstatus = new dtStockHistory
            {
                StoockID = stockID,
                Status   = "Stock Created",
                Value    = StockOb.purchasedvalue,
                UserID   = UserID,
                Created  = DateTime.Now,
                StatusID = 0
            };

            dtTransactionLedger newpurchaseledger = new dtTransactionLedger
            {
                PurchaseID          = pID,
                TransactionType     = "Purchase",
                TotelAmount         = pVALUE,
                SaleID              = null,
                TransactionDateTime = Convert.ToDateTime(PurchaseOb.PurchaseDate)
            };

            dtTransactionLedger newshippingledger = new dtTransactionLedger
            {
                PurchaseID          = pID,
                TransactionType     = "Shipping",
                TotelAmount         = pPOSTAGE,
                SaleID              = null,
                TransactionDateTime = Convert.ToDateTime(PurchaseOb.PurchaseDate)
            };

            DB.dtStockHistories.InsertOnSubmit(newstatus);
            DB.dtTransactionLedgers.InsertOnSubmit(newpurchaseledger);
            DB.dtTransactionLedgers.InsertOnSubmit(newshippingledger);
            DB.SubmitChanges();
        }
예제 #6
0
        public void AddNewStockItem(List <skStock> StockList, skPurchase PurchaseObject, int UserID)
        {
            dtPurchese newpurchase = new dtPurchese
            {
                ItemTitle       = PurchaseObject.Title,
                ItemDescription = PurchaseObject.Description,
                PurchesedValue  = PurchaseObject.Amount,
                ShippingCosts   = PurchaseObject.Postage,
                InvoiceID       = PurchaseObject.Invoice,
                Purchesed_Date  = PurchaseObject.PurchaseDate,
                AddedBy         = UserID,
                VendorID        = PurchaseObject.VendorObject.VendorID,
                IsExpense       = false,
                Created         = DateTime.Now,
                Updated         = DateTime.Now
            };

            DB.dtPurcheses.InsertOnSubmit(newpurchase);
            DB.SubmitChanges();

            int ID = (from s in DB.dtPurcheses
                      orderby s.pID descending
                      select new { ID = s.pID }).Take(1).FirstOrDefault().ID;

            foreach (skStock s in StockList)
            {
                dtStock newstock = new dtStock
                {
                    CategoryID  = s.CategoryObject.StockTypeID,
                    ItemDesc    = s.Description,
                    ItemTitle   = s.Name,
                    ValueBandID = s.ValueBandObject.ID,
                    Batch       = 0,
                    Sold        = false,
                    CreatedBy   = UserID,
                    Created     = DateTime.Now,
                    PurchaseID  = ID
                };

                dtStockDetail newdetails = new dtStockDetail
                {
                    PurchaseValue = s.purchasedvalue
                };

                dtStockHistory newstatus = new dtStockHistory
                {
                    Status   = "Stock Created",
                    Value    = s.purchasedvalue,
                    UserID   = UserID,
                    Created  = DateTime.Now,
                    StatusID = 0
                };

                newstock.dtStockHistories.Add(newstatus);
                newstock.dtStockDetails.Add(newdetails);


                DB.dtStocks.InsertOnSubmit(newstock);
            }

            DB.SubmitChanges();
        }