⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pricemenu.aspx.cs

📁 简单的Web平台。能够读取Excel文件
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class PriceMenu : System.Web.UI.Page
{
    /************************事件处理函数***************************/
    #region 事件处理函数
    protected void Page_Load(object sender, EventArgs e)
    {        
        if ( !Page.IsPostBack )
        {            
            PopulatePriceItem();

            btnDel.Enabled = false;     // 删除价格

            btnImport.Enabled = false;  // 导入价格
            btnEdit.Enabled = false;    // 编辑价格

            btnPublish.Enabled = false; // 发布价格
            btnAbandon.Enabled = false; // 废弃价格
            
            trvPrice.CollapseAll();
        }
        btnDel.Attributes.Add("script","return confirm('是否确定删除价格')");
    }

    /// <summary>
    /// 选择结点时触发(NavigateNrl设置后,此事件不会触发)
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void trvPrice_SelectedNodeChanged(object sender, EventArgs e)
    {
        
    }

    /// <summary>
    /// CheckBox勾选状态发生变化时触发
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void trvPrice_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
    {       
        TreeNode evnNode = e.Node;  // 触发事件的节点对象

        if ( 0 == evnNode.Depth )           // 选择价格节点
        {
            int iCheckedCount = 0;      // 勾选的价格个数
            for (int i=0; i<trvPrice.Nodes.Count;i++)
            {
                if ( trvPrice.Nodes[i].Checked )
                    iCheckedCount ++;
            }

            if (1 != iCheckedCount)
            {
                btnDel.Enabled = false;
                
                btnImport.Enabled = false;
                btnEdit.Enabled = false;

                btnPublish.Enabled = false;
                btnAbandon.Enabled = false;
            }
            else
            {
                string strVersion = evnNode.Value;      // 价格版本号
                string strSQL_PrcStatus = "SELECT 状态 FROM priceInfo WHERE 价格版本号 LIKE '" + strVersion + "'";

                DBConnector dbConn = new DBConnector();
                int iStatus = dbConn.QueryIntValue( strSQL_PrcStatus );

                switch ( iStatus )
                {
                    case 1:         // 制作中
                        btnPublish.Enabled = true;
                        btnAbandon.Enabled = false;
                        break;
                    case 2:         // 完成 Lagacy
                        break;
                    case 3:         // 发布
                        btnPublish.Enabled = false;
                        btnAbandon.Enabled = true;
                        break;
                    case 4:         // 废弃
                        btnPublish.Enabled = true;
                        btnAbandon.Enabled = false;
                        break;
                }

                btnDel.Enabled = true;
            }
        }
        else if ( 1 == evnNode.Depth )      // 选择厂牌节点
        {
            if ("全部" == ddlComStatus.SelectedValue)
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = false;

                return;
            }

            int iCheckChange = 0;
            if (evnNode.Checked)
            {
                for (int i = 0; i < evnNode.ChildNodes.Count; i++)
                {
                    if ( !evnNode.ChildNodes[i].Checked )
                    {
                        evnNode.ChildNodes[i].Checked = true;
                        iCheckChange++;
                    }
                    
                }
            }
            else
            {
                for (int i = 0; i < evnNode.ChildNodes.Count; i++ )
                {
                    if ( evnNode.ChildNodes[i].Checked )
                    {
                        evnNode.ChildNodes[i].Checked = false;
                        iCheckChange--;
                    }
                    
                }
            }

            int iSumCount = Convert.ToInt32( hidCheckedModelCount.Value );
            iSumCount += iCheckChange;

            hidCheckedModelCount.Value = "" + iSumCount;

            int iModelCount = 0;
            iModelCount = GetCheckedItemCount( evnNode );

            if (iSumCount != iModelCount || 0==iSumCount )
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = false;

                return;
            }

            if ("已导入" == ddlComStatus.SelectedValue)
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = true;
            }
            else if ("未导入" == ddlComStatus.SelectedValue)
            {
                btnImport.Enabled = true;
                btnEdit.Enabled = false;
            }            
        }
        else if ( 2 == evnNode.Depth )      // 选择车系结点
        {
            if ("全部" == ddlComStatus.SelectedValue)
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = false;

                return;
            }

            int iSumCount = Convert.ToInt32( hidCheckedModelCount.Value );
            if (evnNode.Checked)
                iSumCount++;
            else
            {
                evnNode.Parent.Checked = false;
                iSumCount--;
            }
            hidCheckedModelCount.Value = "" + iSumCount;

            int iModelCount = 0;                                    // 所在厂牌选择的车系数
            iModelCount = GetCheckedItemCount( evnNode.Parent );    // 取得子节点勾选的项目数

            if ( iSumCount!=iModelCount || 0==iSumCount )                           // 所勾选的车系不在同一厂牌中
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = false;
                return;
            }

            if (0 == ddlComStatus.SelectedValue.CompareTo("未导入"))
            {
                btnImport.Enabled = true;
                btnEdit.Enabled = false;
            }
            else
            {
                btnImport.Enabled = false;
                btnEdit.Enabled = true;
            }                        
        }
    }

    /// <summary>
    /// Combo选项发生变化时触发
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void ddlPriceItemFilter_SelectedIndexChanged(object sender, EventArgs e)
    {
        trvPrice.Nodes.Clear();
        PopulatePriceItem();
    }

    /// <summary>
    /// Combo选项发生变化时触发
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void ddlComStatus_SelectedIndexChanged(object sender, EventArgs e)
    {
        if ("全部" == ddlComStatus.SelectedValue)
        {
            btnImport.Enabled = false;
            btnEdit.Enabled = false;            
        }

        trvPrice.Nodes.Clear();
        PopulatePriceItem();
    }

    /// <summary>
    /// 删除价格
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnDel_Click(object sender, EventArgs e)
    {
        string strVersion = null;
        for (int i = 0; i < trvPrice.Nodes.Count; i++ )
        {
            if ( trvPrice.Nodes[i].Checked )
            {
                strVersion = trvPrice.Nodes[i].Value;
            }
        }

        if (null == strVersion)
            return;

        DBConnector dbConn = new DBConnector();
        string strSQL_Level = "SELECT 级别名称 FROM level INNER JOIN priceInfo ON priceInfo.价格层次=level.级别层次 WHERE priceInfo.价格版本号 LIKE '" + strVersion + "'";
        string strLevelName = dbConn.QueryString( strSQL_Level );

        if (null == strLevelName)
            return;

        if ("临时" != strLevelName)
        {
            MessageBox.Show(this, "此层次价格不能删除");
            return;
        }

        string strSQL_TableName = "SELECT 数据表名称 FROM priceInfo WHERE 价格版本号 LIKE '" + strVersion + "'";
        string strTableName = dbConn.QueryString( strSQL_TableName );

        string strSQL_ClrTable = "DELETE TABEL " + strTableName;
        dbConn.Execute( strSQL_ClrTable );
        string strSQL_ClrStatus = "DELETE FROM MatchStatus WHERE Version LIKE '" + strVersion + "'";
        dbConn.Execute( strSQL_ClrStatus );
        string strSQL_ClrPrice = "DELETE FROM priceInfo WHERE 价格版本号 LIKE '" + strVersion + "'";
        dbConn.Execute( strSQL_ClrPrice );
                        
    }

    /// <summary>
    /// 导入价格
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnImport_Click(object sender, EventArgs e)
    {
        /////////////////////////////////////////////////////////////
        // 锁定窗口
        trvPrice.Enabled = false;
        btnImport.Enabled = false;
        btnEdit.Enabled = false;

        ddlPriceItemFilter.Enabled = false;
        ddlComStatus.Enabled = false;        
        /////////////////////////////////////////////////////////////

        string strVersion = null;
        string strModels = null;
        for (int i = 0; i < trvPrice.Nodes.Count; i++ ) // 价格
        {
            TreeNode tnPrice = trvPrice.Nodes[i];
            for (int j = 0; j < tnPrice.ChildNodes.Count; j++ ) // 厂牌
            {
                TreeNode tnMake = tnPrice.ChildNodes[j];
                for (int k = 0; k < tnMake.ChildNodes.Count; k++ )  // 车系
                {
                    TreeNode tnModel = tnMake.ChildNodes[k];
                    if ( tnModel.Checked )
                    {
                        strVersion = tnModel.ValuePath.Split('/')[0];
                        strModels += tnModel.Value + ",";
                    }
                }
            }
        }

        if ( null == strModels )
            return;

        strModels = strModels.Remove( strModels.Length-1, 1 );
        string strScript = "<script language='javascript'>" +                           
                           "parent.frames['Main_Bottom_MainFrame'].location = 'ImportMenu.aspx?version=" + strVersion + "&models="+strModels+" ';" +
                           "document.all.Button1.disabled = 'true';" +
                           "</script>";
        ClientScript.RegisterStartupScript( this.GetType(), "clientScript", strScript );
                
    }

    /// <summary>
    /// 编辑价格
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnEdit_Click(object sender, EventArgs e)
    {
        /////////////////////////////////////////////////////////////
        // 锁定窗口
        trvPrice.Enabled = false;
        btnImport.Enabled = false;
        btnEdit.Enabled = false;

        ddlPriceItemFilter.Enabled = false;
        ddlComStatus.Enabled = false;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -