private void AddExchangedItem(inv_Items _p, long quantity, int?ordernTOventoryID)
        {
            using (SqlConnection con2 = new SqlConnection(constr))
            {
                using (SqlCommand cmd2 = new SqlCommand("Insert_PurshaseItems"))
                {
                    cmd2.CommandType = CommandType.StoredProcedure;
                    cmd2.Parameters.AddWithValue("@ItemID", _p.ItemID);
                    cmd2.Parameters.AddWithValue("@ItemNameAr", _p.ItemNameAr);
                    cmd2.Parameters.AddWithValue("@ItemQuantity", quantity);
                    cmd2.Parameters.AddWithValue("@sellamount", _p.ItemSalePrice);
                    cmd2.Parameters.AddWithValue("@ItemPuchasePrice", _p.ItemPuchasePrice);

                    cmd2.Parameters.AddWithValue("@ItemHistoryDecription", " تحويل بضاعة من المخزن الى المخزن");

                    cmd2.Parameters.AddWithValue("@ItemHistoryProccessTypeID", 2);
                    cmd2.Parameters.AddWithValue("@InventoryID", ordernTOventoryID);
                    cmd2.Parameters.AddWithValue("@CategoryID", _p.CategoryID);
                    cmd2.Parameters.AddWithValue("@ItemPurchaseCurrencyID", _p.CategoryID);
                    cmd2.Parameters.AddWithValue("@BillNo", "-1");

                    ////cmd2.Parameters.AddWithValue("@PurchaseStatusID", 1);// if purchase operation done or not
                    //////    cmd2.Parameters.AddWithValue("@ItemTotalPurchaseAmount", ItemPuchasePrice );
                    //////cmd2.Parameters.AddWithValue("@ItemCostPurchase", ItemCostPurchase);
                    ////////////////



                    cmd2.Connection = con2;
                    con2.Open();
                    cmd2.ExecuteNonQuery();
                    con2.Close();
                }
            }
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            inv_Items inv_Items = await db.inv_Items.FindAsync(id);

            db.inv_Items.Remove(inv_Items);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Beispiel #3
0
        public ActionResult Remove(inv_Items Item)
        {
            inv_Items inv_Items = db.inv_Items.Find(Item.ItemID);

            db.inv_Items.Remove(inv_Items);
            db.SaveChanges();
            return(new JsonResult {
                Data = new { status = 1 }
            });
        }
Beispiel #4
0
        public async Task <ActionResult> UpdateQuantity(inv_Items Item, inv_ItemHistory ItemHistory, decimal?NewQuantity)
        {
            int status = 0;

            long ItemId;

            if (Item.ItemID > 0)
            {
                //Edit
                var v = db.inv_Items.Where(a => a.ItemID == Item.ItemID).FirstOrDefault();
                if (v != null)
                {
                    Session["OldQuantityTemp"] = v.ItemQuantity;
                    Session["NewQuantityTemp"] = NewQuantity;

                    v.ItemID = Item.ItemID;
                    ItemId   = Item.ItemID;

                    v.ItemQuantity = int.Parse(Session["OldQuantityTemp"].ToString()) + int.Parse(Session["NewQuantityTemp"].ToString());

                    await db.SaveChangesAsync();

                    status = 1;


                    // Log ItemHistroy

                    string constr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;
                    using (SqlConnection con = new SqlConnection(constr))
                    {
                        using (SqlCommand cmd = new SqlCommand("Insert_ItemHistory"))
                        {
                            cmd.CommandType = CommandType.StoredProcedure;
                            cmd.Parameters.AddWithValue("@ItemID", Item.ItemID);
                            cmd.Parameters.AddWithValue("@ItemHistoryQuantity", long.Parse(Session["NewQuantityTemp"].ToString()));
                            cmd.Parameters.AddWithValue("@ItemHistoryProccessTypeID", 1);
                            cmd.Parameters.AddWithValue("@ItemHistoryDebitOrCredit", true);
                            cmd.Parameters.AddWithValue("@ItemHistoryDecription", "توريدة جديدة");

                            cmd.Connection = con;
                            con.Open();
                            cmd.ExecuteNonQuery();
                            con.Close();
                        }
                    }

                    //Log ItemHistroy
                }
            }


            return(new JsonResult {
                Data = new { status = status }
            });
        }
        public async Task <ActionResult> Edit([Bind(Include = "ItemID,ItemBatch,ItemNameAr,ItemNameEn,ItemQuantity,ItemMinimumQuantity,ItemSalePrice,ItemSaleCurrencyID,ItemPuchasePrice,ItemPurchaseCurrencyID,InventoryID,CategoryID,SubCategoryID,ItemExpiredDate,ItemAddedDate,ItemUpdatedAt,UpLoaded,BarCode")] inv_Items inv_Items)
        {
            if (ModelState.IsValid)
            {
                db.Entry(inv_Items).State = EntityState.Modified;
                await db.SaveChangesAsync();

                //return RedirectToAction("Index");
            }
            return(View(inv_Items));
        }
        // GET: GoodExchanges/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            inv_Items inv_Items = await db.inv_Items.FindAsync(id);

            if (inv_Items == null)
            {
                return(HttpNotFound());
            }
            return(View(inv_Items));
        }
Beispiel #7
0
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            inv_Items inv_Items = await db.inv_Items.FindAsync(id);

            if (inv_Items == null)
            {
                return(HttpNotFound());
            }

            return(Json(inv_Items, JsonRequestBehavior.AllowGet));
            //return View(inv_Items);
        }
Beispiel #8
0
        public ActionResult Save(inv_Items Item)
        {
            int status = 0;

            // Start Validation cheack
            if (ModelState.IsValid)
            {
                //################### Edit Item ###################//
                if (Item.ItemID > 0)
                {
                    var v = db.inv_Items.Where(I => I.ItemID == Item.ItemID).FirstOrDefault();
                    if (v != null)
                    {
                        v.ItemID          = Item.ItemID;
                        v.ItemNameAr      = Item.ItemNameAr;
                        v.ItemQuantity    = Item.ItemQuantity;
                        v.ItemSalePrice   = Item.ItemSalePrice;
                        v.CategoryID      = Item.CategoryID;
                        v.SubCategoryID   = Item.SubCategoryID;
                        v.ItemExpiredDate = Item.ItemExpiredDate;
                        status            = 1; // 1 for update
                        db.SaveChanges();
                    }
                }
                //################### Edit Item //###################

                // Start Save New Item
                else
                {
                    #region

                    string constr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;


                    using (SqlConnection con2 = new SqlConnection(constr))
                    {
                        using (SqlCommand cmd2 = new SqlCommand("Insert_PurshaseItems"))
                        {
                            cmd2.CommandType = CommandType.StoredProcedure;
                            cmd2.Parameters.AddWithValue("@ItemID", Item.ItemID);
                            cmd2.Parameters.AddWithValue("@ItemNameAr", Item.ItemNameAr);
                            cmd2.Parameters.AddWithValue("@ItemQuantity", Item.ItemQuantity);
                            cmd2.Parameters.AddWithValue("@sellamount", Item.ItemSalePrice);
                            cmd2.Parameters.AddWithValue("@ItemPuchasePrice", Item.ItemPuchasePrice);
                            cmd2.Parameters.AddWithValue("@ItemHistoryDecription", "توريد بضاعة جديدة");
                            cmd2.Parameters.AddWithValue("@ItemHistoryProccessTypeID", 3);
                            cmd2.Parameters.AddWithValue("@InventoryID", int.Parse(Session["ii"].ToString()));
                            cmd2.Parameters.AddWithValue("@CategoryID", Item.CategoryID);
                            cmd2.Parameters.AddWithValue("@ItemPurchaseCurrencyID", 1);
                            cmd2.Parameters.AddWithValue("@BillNo", "-1");
                            cmd2.Connection = con2;
                            con2.Open();
                            cmd2.ExecuteNonQuery();
                            con2.Close();
                        }
                    }

                    #endregion
                    status = 2;          // 2 fro
                }
                //End Save New Item

                return(new JsonResult {
                    Data = new { status = status }
                });
            }
            // End Validation cheack


            // Start Send validation error
            else
            {
                var errorList = ModelState.Values.SelectMany(m => m.Errors)
                                .Select(e => e.ErrorMessage)
                                .ToList();

                return(new JsonResult {
                    Data = new { status = errorList }
                });
            }
            // End  Send validation error
        }
Beispiel #9
0
        public JsonResult ComplateRequestOrder(string OrderpaymentAmount, string ItemIDArray, string NamesArray, string ItemPriceArray, string QuantitiesArray, int RequestSourceID, int RequestType)
        {
            int    LastRequest;
            string OrderNumber           = " ";
            List <inv_Requests> LastList = db.inv_Requests.ToList();

            if (LastList == null)
            {
                LastRequest = 1;
            }
            else
            {
                LastRequest = db.inv_Requests.Max(item => item.RequestID);;
            }

            if (RequestType == 1)
            {
                OrderNumber = "POS" + DateTime.Now.ToString("yyyyMMdd") + (LastRequest + 1);
            }
            else if (RequestType == 2)
            {
                OrderNumber = "CUS" + DateTime.Now.ToString("yyyyMMdd") + (LastRequest + 1);
            }


            int[]    ItemIDs        = Array.ConvertAll(ItemIDArray.Split(','), int.Parse);
            string[] Names          = NamesArray.Split(',');
            int[]    ItemsSellPrice = Array.ConvertAll(ItemPriceArray.Split(','), int.Parse);


            //int[] ItemspurchasePrice = Array.ConvertAll(ItempurchasePriceArray.Split(','), int.Parse);
            int[] Quantities = Array.ConvertAll(QuantitiesArray.Split(','), int.Parse);


            // ################################################ //
            //        Phase 1: Insert Sales Reciept (order)     //
            // ################################################ //
            string constr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;

            using (SqlConnection con = new SqlConnection(constr))
            {
                using (SqlCommand cmd = new SqlCommand("inv_Insert_RequestOrder"))
                {
                    var TotatItmesAmount = ItemsSellPrice.Sum();
                    var PointOfSaleID    = Session["PointOfSaleID"];
                    cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.AddWithValue("@RequestSourceTypeID", 1);      // Point Of Sale Request
                    cmd.Parameters.AddWithValue("@RequestSourceID", RequestSourceID);
                    cmd.Parameters.AddWithValue("@RequestSourceName", ' ');
                    cmd.Parameters.AddWithValue("@RequestDestinationID", 0);
                    cmd.Parameters.AddWithValue("@RequestNo", OrderNumber);
                    cmd.Parameters.AddWithValue("@RequestTotalSaleAmount", TotatItmesAmount);
                    cmd.Parameters.AddWithValue("@RequestPaidAmount", 0);
                    cmd.Parameters.AddWithValue("@RequestRemaining", 0);



                    cmd.Connection = con;
                    con.Open();
                    cmd.ExecuteNonQuery();
                    con.Close();
                }
            }



            // ################################################ //
            //     Phase 2: Insert Inventory  Items  Request    //
            // ################################################ //
            using (SqlConnection con2 = new SqlConnection(constr))
            {
                for (int i = 0; i < Names.Length; i++)
                {
                    using (SqlCommand cmd2 = new SqlCommand("inv_Insert_RequestItems"))
                    {
                        var name     = Names[i];
                        var quantity = Quantities[i];
                        var amount   = ItemsSellPrice[i];
                        var itemID   = ItemIDs[i];

                        inv_Items inv_Items = db.inv_Items.SingleOrDefault(I => I.ItemID == itemID);
                        // var name = inv_Items.ItemNameAr;

                        var purchasePrice     = inv_Items.ItemPuchasePrice;
                        var CategoryID        = inv_Items.CategoryID;
                        var ItemSalePrice     = inv_Items.ItemSalePrice;
                        var ItemPurshasePrice = inv_Items.ItemPuchasePrice;



                        cmd2.CommandType = CommandType.StoredProcedure;
                        cmd2.Parameters.AddWithValue("@RequestNo", OrderNumber);
                        cmd2.Parameters.AddWithValue("@ItemID", itemID);
                        cmd2.Parameters.AddWithValue("@ItemNameAr", name);
                        cmd2.Parameters.AddWithValue("@ItemQuantity", quantity);
                        cmd2.Parameters.AddWithValue("@ItemSalePrice", ItemSalePrice);
                        cmd2.Parameters.AddWithValue("@ItemPurshasePrice", ItemPurshasePrice);
                        cmd2.Parameters.AddWithValue("@CategoryID", CategoryID);
                        cmd2.Parameters.AddWithValue("@ItemTotalAmount", amount);



                        //cmd2.Parameters.AddWithValue("@ItemPurchasePrice", purchasePrice);

                        cmd2.Connection = con2;
                        con2.Open();

                        cmd2.ExecuteNonQuery();
                        con2.Close();

                        //   Functions.Functions.InsertItemHistory(itemID, quantity,"Sales Credit",0,0,"Sales Credit");

                        //   Functions.Functions.InsertSalesHistory(itemID, quantity, 0, amount, "Sales");
                    }
                }
            }

            // ################################################ //
            //             Phase 3: Empty Sales Cart
            // ################################################ //

            using (SqlConnection con2 = new SqlConnection(constr))
            {
                using (SqlCommand cmd2 = new SqlCommand("inv_DeleteRequestCart"))
                {
                    cmd2.CommandType = CommandType.StoredProcedure;
                    cmd2.Parameters.AddWithValue("@RequestType", RequestType);
                    cmd2.Connection = con2;
                    con2.Open();
                    cmd2.ExecuteNonQuery();
                    con2.Close();
                }
            }



            return(Json(1));
        }