protected void gvSupplyOrder_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Session["UserID"] == null)
            {
                Response.Redirect("~/BasicData/webLogIn.aspx");
            }
            int userid      = int.Parse(Session["UserID"].ToString());
            int operationid = 1;

            csGetPermission Per = new csGetPermission();

            if (!Per.getPermission(userid, pageid, operationid))
            {
                Response.Redirect("~/BasicData/webHomePage.aspx");
            }

            try
            {
                if (string.IsNullOrEmpty(txtSupplyOrderNo.Text))
                {
                    Response.Write("<script>alert('من فضلك ادخل كود امر التوريد')</script>");
                    return;
                }

                TextBox txtQtyPrice  = gvSupplyOrder.SelectedRow.FindControl("txtQtyPrice") as TextBox;
                TextBox txtFQtyPrice = gvSupplyOrder.SelectedRow.FindControl("txtFQtyPrice") as TextBox;

                if (string.IsNullOrEmpty(txtFQtyPrice.Text))
                {
                    txtFQtyPrice.Text = "0";
                }

                if (string.IsNullOrEmpty(txtQtyPrice.Text) || decimal.Parse(txtQtyPrice.Text) == 0)
                {
                    Response.Write("<script>alert('من فضلك يجب ان يكون سعر الصنف اكبر من صفر')</script>");
                    return;
                }

                if (decimal.Parse(gvSupplyOrder.SelectedRow.Cells[10].Text) > 0)
                {
                    if (string.IsNullOrEmpty(txtFQtyPrice.Text) || decimal.Parse(txtFQtyPrice.Text) == 0)
                    {
                        Response.Write("<script>alert('من فضلك يجب ان يكون سعر tester اكبر من صفر')</script>");
                        return;
                    }
                }

                ADAM.DataBase.ADAMConnectionString mdb = new DataBase.ADAMConnectionString();
                ADAM.DataBase.IncommingOrderData   dr  = mdb.IncommingOrderDatas.Single(a => a.Id == long.Parse(gvSupplyOrder.SelectedDataKey.Value.ToString()));
                dr.ItemPrice     = decimal.Parse(txtQtyPrice.Text);
                dr.FreeItemPrice = decimal.Parse(txtFQtyPrice.Text);
                mdb.SaveChanges();
            }
            catch { }
        }
Beispiel #2
0
        private long GetIncoOrderData(long ItemType)
        {
            long IncommingOrder = 0;

            ADAM.DataBase.ADAMConnectionString Mdb = new DataBase.ADAMConnectionString();
            var IncRows = from a in Mdb.IncommingOrderDatas where a.ItemTypeId == ItemType orderby a.Id descending select a;

            if (IncRows.Count() == 0)
            {
                IncommingOrder = 1;
            }
            else
            {
                ADAM.DataBase.IncommingOrderData dr = IncRows.First();
                IncommingOrder = dr.IncommingOrderNo + 1;
            }

            return(IncommingOrder);
        }
        protected void gvItemMovement_SelectedIndexChanged(object sender, EventArgs e)
        {
            ADAM.DataBase.ADAMConnectionString Mdb   = new DataBase.ADAMConnectionString();
            ADAM.DataBase.ItemMovement         movdr = Mdb.ItemMovements.Single(a => a.Id == long.Parse(gvItemMovement.SelectedDataKey.Value.ToString()));
            TextBox txtQtyOut     = gvItemMovement.SelectedRow.FindControl("txtQtyOut") as TextBox;
            TextBox txtfreeQtyOut = gvItemMovement.SelectedRow.FindControl("txtfreeQtyOut") as TextBox;


            if ((movdr.MainQtyOut + decimal.Parse(txtQtyOut.Text) <= movdr.MainQty) && (movdr.AdditionalQtyOut + decimal.Parse(txtfreeQtyOut.Text) <= movdr.AdditionalQty))
            {
                movdr.MainQtyOut       = movdr.MainQtyOut + decimal.Parse(txtQtyOut.Text);
                movdr.AdditionalQtyOut = movdr.AdditionalQtyOut + decimal.Parse(txtfreeQtyOut.Text);

                var ExchangeRequestOrderRows = from a in Mdb.ExchangeRequestDetailsDatas
                                               where a.ExchangeRequestHeaderData.OrderType == long.Parse(ddlExchangeRequestType.SelectedValue) &&
                                               a.Status == 1
                                               orderby a.ExchangeRequestOrder descending
                                               select a;

                if (ExchangeRequestOrderRows.Count() <= 0)
                {
                    hfExchangeRequestOrder.Value = "1";
                }
                else
                {
                    if (hfExchangeRequestOrder.Value == "0")
                    {
                        hfExchangeRequestOrder.Value = (ExchangeRequestOrderRows.First().ExchangeRequestOrder + 1).ToString();
                    }
                }

                ADAM.DataBase.ExchangeRequestDetailsData Exdr = Mdb.ExchangeRequestDetailsDatas.Single(a => a.Id == long.Parse(hfDetailsId.Value));
                if ((decimal.Parse(txtQtyOut.Text)) > (Exdr.Qty + Exdr.Bounce))
                {
                    Response.Write("<script>alert('لا يمكن ان يكون الكمية المنصرفة اكبر من كمية طلب الصرف')</script>");
                    return;
                }
                if ((decimal.Parse(txtfreeQtyOut.Text)) > (Exdr.FreeQty))
                {
                    Response.Write("<script>alert('لا يمكن ان يكون الكمية Tester المنصرفة اكبر من كمية طلب الصرف')</script>");
                    return;
                }
                Exdr.ExchangeRequestOrder = long.Parse(hfExchangeRequestOrder.Value);
                Exdr.Status = 1;

                if (movdr.IncommingOrderNo != 0)
                {
                    ADAM.DataBase.IncommingOrderData incdr = Mdb.IncommingOrderDatas.Single(a => a.IncommingOrderNo == movdr.IncommingOrderNo && a.AuditDetailsId == movdr.AuditDetailsId);
                    Exdr.IncommingOrderId = incdr.Id;
                    Exdr.LocationId       = movdr.LocatioId;
                }

                ADAM.DataBase.ItemMovement dr = new DataBase.ItemMovement();
                dr.AdditionalQty        = decimal.Parse(txtfreeQtyOut.Text) * -1;
                dr.AdditionalQtyOut     = 0;
                dr.AuditDetailsId       = movdr.AuditDetailsId;
                dr.DocmentId            = Exdr.Id;
                dr.IncommingOrderNo     = movdr.IncommingOrderNo;
                dr.ItemColorId          = movdr.ItemColorId;
                dr.ItemId               = movdr.ItemId;
                dr.ItemUnitId           = movdr.ItemUnitId;
                dr.LocatioId            = movdr.LocatioId;
                dr.MainQty              = decimal.Parse(txtQtyOut.Text) * -1;
                dr.MainQtyOut           = 0;
                dr.MovementDate         = DateTime.Now;
                dr.MovmentnameId        = int.Parse(ddlExchangeRequestType.Text);
                dr.RecDate              = DateTime.Now;
                dr.StoreId              = movdr.StoreId;
                dr.SupplyOrderDetailsId = movdr.SupplyOrderDetailsId;
                dr.ParentItemMoveMentId = movdr.Id;
                Mdb.ItemMovements.Add(dr);

                Exdr.IncommingOrderNo = movdr.IncommingOrderNo;

                Mdb.SaveChanges();

                Exdr.MovementId = dr.Id;

                gvExchangeRequestData.DataBind();
            }
            else
            {
                Response.Write("<script>alert('لا يمكن ان يكون الكمية المنصرفة اكبر من كمية الرصيد الحالي')</script>");
                return;
            }
        }