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

📄 mesagelist.aspx.cs

📁 CRM管理系统 CRM管理系统
💻 CS
字号:
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 message_mesageList : PageBase
{
    Itsv.BLL.message_list message_list = new Itsv.BLL.message_list();

    protected void Page_Load(object sender, EventArgs e)
    {
        if (this.CurrentUser == null)
        {
            return;
        }

        //btndelete.Attributes.Add("onclick", "return confirm('确实要删除本条信息吗?')");

        if (!Page.IsPostBack)
        {
            SetData();
        }
    }

    //初始化页面的代码
    private void SetData()
    {
        this.btndelete.Attributes.Add("onclick", "return checkChk();");
        BindGridView();
    }

    //绑定GridView数据
    private void BindGridView()
    {
        int is_read = ddlRead.SelectedIndex;
        string strWhere=" 1=1 ";
        if(is_read==1)
        {
            strWhere += " and  is_read = 0 ";
        }
        if(is_read==2)
        {
            strWhere += " and is_read = 1";
        }

        string title = txtTitle.Text.ToString();
        if (txtTitle.Text.Length > 0)
        {
            strWhere += " and title like  '%"+ title +"%' " ;
        }

        string sender_name = txtSenderName.Text.ToString();
        if(sender_name.Length>0)
        {
            strWhere += " and sender like '%"+ sender_name +"%'";
        }

        string startTime = mcStartTime.Text.ToString();
        string endTime = mcEndTime.Text.ToString();

        if (startTime.Length > 0 && endTime.Length > 0)
        {
            strWhere += " and (Convert(varchar(10),date_time,121) >='" + startTime + "' and Convert(varchar(10),date_time,121) <= '" + endTime + "')";
        }

        if (ddlMsgState.SelectedIndex == 1)
        {
            strWhere += " and (sender_id='" + CurrentUser.user_id + "')";
        }
        
        if (ddlMsgState.SelectedIndex == 2)
        {
            strWhere += " and (receiver_id='" + CurrentUser.user_id + "')";
        }

        if (ddlMsgState.SelectedIndex == 0)
        {
            strWhere += " and (sender_id='" + CurrentUser.user_id + "' or receiver_id = '"+ CurrentUser.user_id +"')";
        }
        //绑定pager分页数据
        int count = Convert.ToInt32(message_list.count(strWhere).ToString());
        pager.RecordCount = count;
        BindPager();

        strWhere += "order by msg_id desc";
        DataSet ds = new DataSet();
        ds = message_list.GetList(strWhere);

        int rowCount = ds.Tables[0].Rows.Count;
        if (rowCount > 0)
        {
            try
            {
                GridView1.DataSource = ds.Tables[0].DefaultView;
                GridView1.DataKeyNames = new string[1] { "msg_id" };
                GridView1.DataBind();
            }
            catch (Exception)
            {
                GridView1.DataSource = ds.Tables[0].DefaultView;
                GridView1.DataBind();
            }
        }
        else
        {
            DataTable dt = AddEmputyData(ds);
            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
    }

    //增加一个空行来显示表头
    private DataTable AddEmputyData(DataSet ds)
    {
        DataTable dt = ds.Tables[0];
        DataRow newRow = dt.NewRow();
        dt.Rows.Add(newRow);
        return dt;
    }

    //绑定分页
    private void BindPager()
    {
        pager.ShowCustomInfoSection = Wuqi.Webdiyer.ShowCustomInfoSection.Left;
        pager.ShowInputBox = Wuqi.Webdiyer.ShowInputBox.Always;
        pager.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Right;
        pager.NumericButtonCount = 8;
        pager.AlwaysShow = true;
        pager.UrlPaging = false;
        pager.Wrap = false;
        pager.ShowPageIndex = false;
        pager.FirstPageText = "首页 ";
        pager.PrevPageText = " 上一页 ";
        pager.NextPageText = " 下一页 ";
        pager.LastPageText = " 最后页 ";
        pager.SubmitButtonText = "跳转";
        pager.PageSize = 10;

        //        pager.CustomInfoTextAlign = HorizontalAlign.Right;
        pager.CustomInfoHTML = "记录总数:<font color=\"blue\"><b>" + pager.RecordCount.ToString() + "</b></font>";
        pager.CustomInfoHTML += " 总页数:<font color=\"blue\"><b>" + pager.PageCount.ToString() + "</b></font>";
        pager.CustomInfoHTML += " 当前页:<font color=\"red\"><b>" + pager.CurrentPageIndex.ToString() + "</b></font>";
    }

    protected void ddlRead_SelectedIndexChanged(object sender, EventArgs e)
    {
        BindGridView();
    }
    protected void btnQuery_Click(object sender, EventArgs e)
    {
        BindGridView();
    }
    protected void btnClear_Click(object sender, EventArgs e)
    {
        txtTitle.Text = "";
        txtSenderName.Text = "";
        mcStartTime.Text = "";
        mcEndTime.Text = "";
        BindGridView();
    }
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;
        BindGridView();
    }
    protected void pager_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
    {
        pager.CurrentPageIndex = e.NewPageIndex;
        GridView1.PageIndex = e.NewPageIndex - 1;
        BindGridView();
    }
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        switch (e.Row.RowType)
        {
            case DataControlRowType.DataRow:
            {
                //当鼠标停留时更改背景色
                e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#C0C0FF'");
                //当鼠标移开时还原背景色
                e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
                
                LinkButton lbtnDetail = (LinkButton)(e.Row.FindControl("lbtnDetail"));
                LinkButton lbtnDelete = (LinkButton)(e.Row.FindControl("lbtnDelete"));
                lbtnDetail.CommandArgument = e.Row.RowIndex.ToString();
                lbtnDelete.CommandArgument = e.Row.RowIndex.ToString();
                CheckBox chk = (CheckBox)e.Row.FindControl("chkSelected");
                try
                {
                    //主键
                    int code = Convert.ToInt32(GridView1.DataKeys[e.Row.RowIndex].Value.ToString());
                    //lbtnDetail.Attributes.Add("onclick", "javascript:window.showModalDialog('messageSingle.aspx?code=" + code + " ',window,'dialogWidth=670px;dialogHeight=470px;help:no;resizable:no; status:no;');return false;");
                    lbtnDetail.Attributes.Add("onclick", "window.open('messageSingle.aspx?code=" + code + "', 'newwindow', 'height=470, width=670, top=100, left=100, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no')");
                }
                catch (Exception)
                {
                    lbtnDetail.Visible = false;
                    lbtnDelete.Visible = false;

                    if (chk != null)
                    {
                        chk.Visible = false ;
                    }
                }

                Label lblIsRead = (Label)e.Row.FindControl("Label2");
                if (lblIsRead != null)
                {
                    if (lblIsRead.Text != "已阅")
                    {
                        e.Row.Attributes.Add("style", " font-weight:bold;");

                    }
                }

                Label lblReceiver = (Label)e.Row.FindControl("Label4");
                if (lblReceiver != null)
                {
                    string receiver = lblReceiver.Text.Trim();
                    int index = receiver.IndexOf('(');
                    if (index < 0)
                    {
                        return;
                    }
                    receiver = receiver.Substring(0, index);
                    if (receiver != this.CurrentUser.account)
                    {
                        if (chk != null)
                        {
                            chk.Enabled = false;
                            lbtnDelete.Enabled = false;
                        }
                    }
                    else
                    {
                        lbtnDelete.Attributes.Add("onclick", "return confirm('确实要删除本条信息吗?')");
                    }
                }

                break;
            }
        }
    }
    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if(e.CommandName == "lbtnDelete")
        {
            //行号
            int rowIndex = Convert.ToInt32(e.CommandArgument.ToString());
            //主键
            int code = Convert.ToInt32(GridView1.DataKeys[rowIndex].Value.ToString());

            bool i = message_list.Delete(code);
            {
                if(i==true)
                {
                    this.WriteUserAction("【" + CurrentUser.account + "】删除编号为【" + code + "】的信息!");
                }
                else
                {
                    Response.Write("<script language=javascript>alert('删除失败!');</script>");
                }
            }
            BindGridView();
        }
    }

    //截取
    public string query1(object str)
    {
        string strValue = str.ToString();
        if(strValue.Length>=11)
        {
            strValue = strValue.Substring(0, 11);
        }
        return strValue;
    }

    public string query2(object str)
    {
        string strValue = str.ToString();
        if (strValue=="0")
        {
            strValue = "普通";
        }
        else if(strValue=="1")
        {
            strValue = "<font color=red>重要</font>";
        }
        return strValue;
    }
    public string query3(object str)
    {
        string strValue = str.ToString();
        if (strValue=="0")
        {
            strValue = "<B>未阅</B>";
        }
        else if (strValue == "1")
        {
            strValue = "已阅";
        }
        return strValue;
    }
    
    //鼠标经过时候 显示详细信息
    public string query5()
    {
        string strValue = "";
        //strValue += "aaaaaaaaa\r\n";
        //strValue += "bbbbbbbbb\r\n";
        //strValue += "ccccccccc\r\n";
        //strValue += "ddddddddd\r\n";
        return strValue;
    }
    //导出excel
    protected void btnExcel_Click(object sender, EventArgs e)
    {
        if (GridView1.Rows.Count == 0)
        {
            ShowMessage("对不起,没有符合条件的数据,请您重试!");
            return;
        }
        Response.Clear();
        Response.Buffer = true;
        Response.Charset = "GB2312";
        string fileName = "MessageList_"+System.DateTime.Now.ToShortDateString()+".xls";
        Response.AppendHeader("Content-Disposition", "attachment;filename="+ fileName +"");
        //经测试如果设置为 GetEncoding("GB2312"),导出的文件将会出现乱码。

        Response.ContentEncoding = System.Text.Encoding.UTF7;

        //设置输出文件类型为excel文件。 
        Response.ContentType = "application/ms-excel";
        
        this.EnableViewState = false;
        System.IO.StringWriter sw = new System.IO.StringWriter();

        System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
        int nCur = GridView1.PageIndex;
        int nSize = GridView1.PageSize;

        GridView1.AllowPaging = false;
        BindGridView();

        GridView1.Columns[7].Visible = false;
        GridView1.RenderControl(hw);
        GridView1.Columns[7].Visible = true;

        //以下恢复分页
        GridView1.AllowPaging = true;
        GridView1.PageIndex = nCur;
        GridView1.PageSize = nSize;

        Response.Write(sw.ToString());
        Response.End();

        BindGridView();
    }

    /**/
    /// <summary>
    /// 重载VerifyRenderingInServerForm方法
    /// 确认在运行时为指定的 ASP.NET 服务器控件呈现 HtmlForm 控件。
    /// </summary>
    /// <param name="control">ASP.NET 服务器控件,它必须位于 HtmlForm 控件中</param>
    public override void VerifyRenderingInServerForm(Control control)
    {
        //base.VerifyRenderingInServerForm(control);
    }
    protected void btndelete_Click(object sender, EventArgs e)
    {
        int i = 0;
        if(GridView1.Rows.Count > 0)
        {
            foreach (GridViewRow row in GridView1.Rows)
            {
                CheckBox chk = (CheckBox)row.FindControl("chkSelected");
                if (chk.Checked && chk.Enabled)
                {
                    int msg_id = Convert.ToInt32(GridView1.DataKeys[i].Value.ToString());

                    message_list.Delete(msg_id);
                }
                i++;
            }
            BindGridView();
        }
    }
    protected void btnSend_Click(object sender, EventArgs e)
    {
        this.ddlMsgState.SelectedIndex = 1;
        BindGridView();
    }
    protected void btnReceive_Click(object sender, EventArgs e)
    {
        this.ddlMsgState.SelectedIndex = 2;
        BindGridView();
    }
}

⌨️ 快捷键说明

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