protected void GetProductTransferOrderProductListById(string transferOrderId)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                DataTable dt = productTransferOrder.GetProductTransferOrderProductListById(transferOrderId, requisitionIdLabel.Text.Trim(), descriptionLabel.Text.Trim());

                if (dt.Rows.Count > 0)
                {
                    productTransferOrderProductListGridView.DataSource = dt;
                    productTransferOrderProductListGridView.DataBind();

                    if (productTransferOrderProductListGridView.Rows.Count > 0)
                    {
                        productTransferOrderProductListGridView.UseAccessibleHeader = true;
                        productTransferOrderProductListGridView.HeaderRow.TableSection = TableRowSection.TableHeader;
                    }
                }
                else
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void GetProductTransferOrderById(string transferOrderId)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                DataTable dt = productTransferOrder.GetProductTransferOrderById(transferOrderId);

                if (dt.Rows.Count > 0)
                {
                    orderDateLabel.Text = dt.Rows[0]["OrderDate"].ToString();
                    transferTypeLabel.Text = dt.Rows[0]["TransferType"].ToString();
                    transferFromIdLabel.Text = dt.Rows[0]["TransferFrom"].ToString();
                    transferFromNameLabel.Text = dt.Rows[0]["TransferFromName"].ToString();
                    transferToIdLabel.Text = dt.Rows[0]["TransferTo"].ToString();
                    transferToNameLabel.Text = dt.Rows[0]["TransferToName"].ToString();
                    requisitionIdLabel.Text = dt.Rows[0]["RequisitionId"].ToString();
                    requisitionDateLabel.Text = dt.Rows[0]["RequisitionDate"].ToString();
                    transportDateLabel.Text = dt.Rows[0]["TransportDate"].ToString();
                    descriptionLabel.Text = dt.Rows[0]["Description"].ToString();
                    narrationLabel.Text = dt.Rows[0]["Narration"].ToString();
                    statusLabel.Text = dt.Rows[0]["Status"].ToString();
                }
                else
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void orderListButton_Click(object sender, EventArgs e)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                if (salesCenterDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Sales Center field is required.";
                }
                else
                {
                    string salesCenterId = salesCenterDropDownList.SelectedValue.Trim();

                    DataTable dt = productTransferOrder.GetProductTransferReceivableListBySC(salesCenterId,drpdwnRequisationTo.SelectedValue);

                    transferOrderListGridView.DataSource = dt;
                    transferOrderListGridView.DataBind();

                    if (transferOrderListGridView.Rows.Count > 0)
                    {
                        transferOrderListGridView.UseAccessibleHeader = true;
                        transferOrderListGridView.HeaderRow.TableSection = TableRowSection.TableHeader;
                    }
                    else
                    {
                        msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                    }
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
                MyAlertBox("MyOverlayStop();");
            }
        }
        protected void GetProductTransferOrderById(string transferOrderId)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                DataTable dt = productTransferOrder.GetProductTransferOrderById(transferOrderId);

                if (dt.Rows.Count > 0 && dt.Rows[0]["TransferTo"].ToString() == transferToDropDownList.SelectedValue.Trim() && dt.Rows[0]["Status"].ToString() == "On Transport")
                {
                    orderIdLabel.Text = dt.Rows[0]["TransferOrderId"].ToString();
                    orderDateLabel.Text = dt.Rows[0]["OrderDate"].ToString();
                    transferTypeLabel.Text = dt.Rows[0]["TransferType"].ToString();
                    transferFromIdLabel.Text = dt.Rows[0]["TransferFrom"].ToString();
                    transferFromNameLabel.Text = dt.Rows[0]["TransferFromName"].ToString();
                    transferToIdLabel.Text = dt.Rows[0]["TransferTo"].ToString();
                    transferToNameLabel.Text = dt.Rows[0]["TransferToName"].ToString();
                    requisitionIdLabel.Text = dt.Rows[0]["RequisitionId"].ToString();
                    requisitionDateLabel.Text = dt.Rows[0]["RequisitionDate"].ToString();
                    transportDateLabel.Text = dt.Rows[0]["TransportDate"].ToString();
                    descriptionLabel.Text = dt.Rows[0]["Description"].ToString();
                    narrationLabel.Text = dt.Rows[0]["Narration"].ToString();
                    statusLabel.Text = dt.Rows[0]["Status"].ToString();

                    GetProductTransferOrderProductListById(transferOrderIdTextBox.Text.Trim());
                    orderInfoContainer.Visible = true;
                    saveButton.Enabled = true;
                }
                else
                {
                    orderInfoContainer.Visible = false;
                    saveButton.Enabled = false;
                    msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void GetProductTransferOrderProductListById(string transferOrderId)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                DataTable dt = productTransferOrder.GetProductTransferOrderProductListById(transferOrderId, requisitionIdLabel.Text.Trim(), descriptionLabel.Text.Trim());

                if (dt.Rows.Count > 0)
                {
                    productTransferOrderProductListGridView.DataSource = dt;
                    productTransferOrderProductListGridView.DataBind();

                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        TextBox receivedQuantityTextBox = (TextBox)productTransferOrderProductListGridView.Rows[i].FindControl("receivedQuantityTextBox");
                        receivedQuantityTextBox.Text = dt.Rows[i]["ApprovedQuantity"].ToString();
                    }

                    if (productTransferOrderProductListGridView.Rows.Count > 0)
                    {
                        productTransferOrderProductListGridView.UseAccessibleHeader = true;
                        productTransferOrderProductListGridView.HeaderRow.TableSection = TableRowSection.TableHeader;

                        saveButton.Enabled = true;
                    }
                    else
                    {
                        saveButton.Enabled = false;
                    }
                }
                else
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void GetPendingTransferOrderList()
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                if (transferTypeDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer Type field is required.";
                }
                else if (transferFromDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer From field is required.";
                }
                else if (transferToDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer To field is required.";
                }
                else if (transferFromDropDownList.SelectedValue != "All" && transferToDropDownList.SelectedValue != "All" && transferFromDropDownList.SelectedValue == transferToDropDownList.SelectedValue)
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer From & Transfer To field value should be different.";
                }
                else
                {
                    string transferDescription = transferDescriptionDropDownList.SelectedValue.Trim();
                    string transferType = transferTypeDropDownList.SelectedValue.Trim();
                    string transferFrom = transferFromDropDownList.SelectedValue.Trim();
                    string transferTo = transferToDropDownList.SelectedValue.Trim();

                    DataTable dt = productTransferOrder.GetProductTransferOrdersListByTransferDescriptionTypeFromToAndStatus(transferDescription, transferType, transferFrom, transferTo, "P");

                    transferOrderListGridView.DataSource = dt;
                    transferOrderListGridView.DataBind();

                    if (transferOrderListGridView.Rows.Count > 0)
                    {
                        transferOrderListGridView.UseAccessibleHeader = true;
                        transferOrderListGridView.HeaderRow.TableSection = TableRowSection.TableHeader;
                    }
                    else
                    {
                        msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                    }
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void setOnTransportLinkButton_Click(object sender, EventArgs e)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                LinkButton lnkBtn = (LinkButton)sender;
                GridViewRow row = (GridViewRow)lnkBtn.NamingContainer;

                productTransferOrder.UpdateProductTransferOrderOnTransport(transferOrderListGridView.Rows[row.RowIndex].Cells[0].Text.ToString());

                MyAlertBox("alert(\"Transfer Order Updated Successfully.\"); window.location=\"/UI/ProductTransferOrder/GetTransferOrderOnTransport.aspx\"");
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void acceptLinkButton_Click(object sender, EventArgs e)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                LinkButton lnkBtn = (LinkButton)sender;
                GridViewRow row = (GridViewRow)lnkBtn.NamingContainer;

                productTransferOrder.UpdateProductTransferOrderStatusById(transferOrderListGridView.Rows[row.RowIndex].Cells[0].Text.ToString(), "C");

                MyAlertBox("alert(\"Product Transfer Order [" + transferOrderListGridView.Rows[row.RowIndex].Cells[0].Text.ToString() + "] Canceled & Product Stock Updated Successfully.\"); window.location=\"/UI/ProductTransferOrder/PendingTransferOrderCancelRequestList.aspx\"");
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void orderReceivedButton_Click(object sender, EventArgs e)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                if (transferTypeLabel.Text == "WH-SC")
                {
                    productTransferOrder.ReceivedProductTransferBySC(idLabel.Text.Trim(), transferToIdLabel.Text.Trim());

                }
                else if (transferTypeLabel.Text == "SC-WH")
                {
                    productTransferOrder.ReceivedProductTransferByWH(idLabel.Text.Trim(), transferToIdLabel.Text.Trim());
                }
                string message = "Product Transfer Order <span class='actionTopic'>Received </span> Successfully. ";
                MyAlertBox("var callbackOk = function () { MyOverlayStart(); window.location = \"/UI/ProductTransferOrder/ReceiveTransferProduct.aspx\"; }; SuccessAlert(\"" + "Process Succeed" + "\", \"" + message + "\", callbackOk);");

                LumexSessionManager.Remove("ProductTransferOrderIdForView");

            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }
        protected void orderListButton_Click(object sender, EventArgs e)
        {
            ProductTransferOrderBLL productTransferOrder = new ProductTransferOrderBLL();

            try
            {
                if (transferTypeDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer Type field is required.";
                }
                else if (transferFromDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer From field is required.";
                }
                else if (transferToDropDownList.SelectedValue == "")
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer To field is required.";
                }
                else if (transferFromDropDownList.SelectedValue != "All" && transferToDropDownList.SelectedValue != "All" && transferFromDropDownList.SelectedValue == transferToDropDownList.SelectedValue)
                {
                    msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = "Transfer From & Transfer To field value should be different.";
                }
                else
                {
                    string transferDescription = transferDescriptionDropDownList.SelectedValue.Trim();
                    string transferType = transferTypeDropDownList.SelectedValue.Trim();
                    string transferFrom = transferFromDropDownList.SelectedValue.Trim();
                    string transferTo = transferToDropDownList.SelectedValue.Trim();
                    string fromDate = LumexLibraryManager.ParseAppDate(fromDateTextBox.Text.Trim());
                    string toDate = LumexLibraryManager.ParseAppDate(toDateTextBox.Text.Trim());
                    string status = statusDropDownList.SelectedValue.Trim();

                    DataTable dt = productTransferOrder.GetProductTransferOrdersListByTransferDescriptionTypeFromToDateRangeAndStatus(transferDescription, transferType, transferFrom, transferTo, fromDate, toDate, status);

                    transferOrderListGridView.DataSource = dt;
                    transferOrderListGridView.DataBind();

                    if (transferOrderListGridView.Rows.Count > 0)
                    {
                        transferOrderListGridView.UseAccessibleHeader = true;
                        transferOrderListGridView.HeaderRow.TableSection = TableRowSection.TableHeader;
                    }
                    else
                    {
                        msgbox.Visible = true; msgTitleLabel.Text = "Data Not Found!!!"; msgDetailLabel.Text = "";
                    }
                }
            }
            catch (Exception ex)
            {
                msgbox.Visible = true; msgTitleLabel.Text = "Exception!!!"; msgDetailLabel.Text = ex.Message;
            }
            finally
            {
                productTransferOrder = null;
            }
        }