submisionmsg.aspx.cs

来自「该服务平台解决了计算机网络与移动网络之间信息交换问题」· CS 代码 · 共 345 行

CS
345
字号
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 MsgManagement_SubmisionMsg : System.Web.UI.Page
{
    private DataAccess.TableAccessor.SMSInfo smsInfoAccessor;
    private DataAccess.TableAccessor.SMSTypeInfo smstypeAccessor;
    private DataAccess.SendSMS sendSMSAccessor;
    private Security.RulesManagement rulesManagement;
    private DataAccess.CookieAccessor cookieAccessor;
    private DataAccess.TableAccessor.SMSSendUserList smsSendUserList = new DataAccess.TableAccessor.SMSSendUserList();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            rulesManagement = new Security.RulesManagement();
            HttpCookie rolesCookie = Request.Cookies["RolesID"];
            int rolesID = 0;
            try
            { 
                //rolesID = int.Parse(rolesCookie.Value); 
                rolesID = int.Parse(Session["RolesID"].ToString());


            }
            catch
            { }
            if (rulesManagement.ValidUserRules(rolesID, 30))
            {
              //  btnView.Visible = rulesManagement.ValidUserRules(rolesID, 30);
                btnUpdate.Visible = rulesManagement.ValidUserRules(rolesID, 31);
                btnSend.Visible = rulesManagement.ValidUserRules(rolesID, 32);
                btnDelete.Visible = rulesManagement.ValidUserRules(rolesID, 33);



                try
                {
                    int smsType = int.Parse(Request.QueryString[0].ToString());
                    FillGridView(smsType);
                    FillLbl(smsType);
                }
                catch
                {
                    return;
                }
            }
            else
            {
                Response.Redirect("../none.aspx");
            }
        }
    }


    private void FillGridView(int smsType)
    {
        //smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
        //// gvResult.DataSource = smsInfoAccessor.GetSubmitSMSInfo(smsType);
        //DataTable dt = smsInfoAccessor.GetSubmitSMSInfo(smsType);
        //if (smsInfoAccessor.GetSubmitSMSInfo(smsType) > 0)
        //{
            
        //}
        if (tbContent.Text == "" && tbSubmissionMan.Text == "")
        {
            smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            DataTable dt = smsInfoAccessor.GetSubmitSMSInfo(smsType);
            dt.Columns.Add("SID", typeof(int));
            
             DataView dv = dt.DefaultView;
             dv.Sort = "SMSDate DESC";
             gvResult.DataSource = dv;
            gvResult.DataBind();
            gvResult.Columns[2].Visible = false;
            //gvResult.Columns[3].Visible = false;
            for (int i = 0; i < this.gvResult.Rows.Count; i++)
            {
                if (this.gvResult.Rows[i].Cells[3].Text.Length > 10)
                    this.gvResult.Rows[i].Cells[3].Text = this.gvResult.Rows[i].Cells[3].Text.Substring(0, 10) + "......";
            }
        }
        else
        {
            string queryStr = "(1=1)";
            smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            if (tbSubmissionMan.Text != "")
                queryStr += string.Format(" AND (UserName LIKE '%{0}%')", tbSubmissionMan.Text);
            if (tbContent.Text != "")
                queryStr += string.Format(" AND (MessageContent LIKE '%{0}%')", tbContent.Text);

            DataTable dt = smsInfoAccessor.GetSubmitSMSInfo(smsType);
            dt.Columns.Add("SID",typeof(int));
            
            DataView dv = dt.DefaultView;
            dv.Sort = "SMSDate DESC";
            dv.RowFilter = queryStr;
            gvResult.DataSource = dv;
            gvResult.DataBind();
            gvResult.Columns[2].Visible = false;
           // gvResult.Columns[3].Visible = false;
            for (int i = 0; i < this.gvResult.Rows.Count; i++)
            {
                if (this.gvResult.Rows[i].Cells[3].Text.Length > 10)
                    this.gvResult.Rows[i].Cells[3].Text = this.gvResult.Rows[i].Cells[3].Text.Substring(0, 10) + "......";
            }
        }
        for (int i = 0; i < this.gvResult.Rows.Count; i++)
        {
            gvResult.Rows[i].Cells[1].Text = (i + 1).ToString();
        }
       
    }

    private int CheckUserSingleChoose(GridView gridView)
    {
        int checkValue = 0;
        int checkCount = 0;
        for (int i = 0; i < gridView.Rows.Count; i++)
        {
            CheckBox ckb = (CheckBox)gridView.Rows[i].FindControl("chk");
            if (ckb.Checked)
            {
                checkValue = int.Parse(gridView.Rows[i].Cells[2].Text);
                checkCount++;
            }
        }
        if (checkCount > 1)
            return 0;
        else if (checkCount == 0)
            return 0;
        else
            return checkValue;
    }

    private ArrayList CheckUserManyChoose(GridView gridView)
    {
        ArrayList arrayList = new ArrayList();
        for (int i = 0; i < gridView.Rows.Count; i++)
        {
            CheckBox ckb = (CheckBox)gridView.Rows[i].FindControl("chk");
            if (ckb.Checked)
                arrayList.Add(int.Parse(gridView.Rows[i].Cells[2].Text));
        }
        return arrayList;
    }

   
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        string  smsType = Request.QueryString[0].ToString();
        int smsID = 0;

 
        smsID = CheckUserSingleChoose(gvResult);
        if (smsID != 0)
        {
            string goUrl = string.Format("<script>window.location.href = 'ViewSMSInfo.aspx?smsID={0}&operationID=2&smsFalg=1&smsType={1}'</script>", smsID, Request.QueryString[0].ToString());
            Response.Write(goUrl);
            
        }
        else
        {
            Response.Write("<script language='javascript'>alert('更新操作只能对一行短信进行操作!');</script>");
            string strUrl = string.Format("<script>window.location.href = 'SubmisionMsg.aspx?smsType={0}'</script>",
                int.Parse(Request.QueryString[0].ToString()));
            Response.Write(strUrl);
        }
    }

   
    private string GetUserMobileNo(int smsID)
    {
        if (Cache["SubmisionSMS"] == null)
        {
            smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            DataTable dt = smsInfoAccessor.GetMostSubmisionSMS(int.Parse(Request.QueryString[0].ToString()));
            Cache["SubmisionSMS"] = dt;
            return GetUserMobileNo(smsID);
        }
        else
        {
            DataTable dt = (DataTable)Cache["SubmisionSMS"];
            DataRow[] rows = dt.Select(string.Format("SMSID = {0}", smsID));
            return rows[0]["Mobile"].ToString();
        }
    }

    #region 发送短信
    protected void btnSend_Click(object sender, EventArgs e)
    {
        DataAccess.TableAccessor.SMSInfo smsInfo = new DataAccess.TableAccessor.SMSInfo();
        DataAccess.SendSMS sendSMS = new DataAccess.SendSMS();
        DataAccess.CookieAccessor cookieAccessor = new DataAccess.CookieAccessor();
        DataAccess.TableAccessor.UserInfo userInfo = new DataAccess.TableAccessor.UserInfo();
              
        string smsType = Request.QueryString[0].ToString();
        int sendUserID = cookieAccessor.GetLoginUserOperationID();
        int userID = cookieAccessor.GetLoginUserOperationID();
        int smsID = CheckUserSingleChoose(gvResult);
        String smsContent = smsInfo.GetMsgContentBySMSID(smsID);
       
        string pretime = smsInfo.GetTimeBySMSID(smsID);
        int countSendUser = 0;
        int trade = 0;
        int count = 0;
        int totalSMS = smsInfo.GetCount();//允许发送的最大条数
        int countSMS = smsInfo.GetCountSMS();//统计已发条数
        
        DataTable dt = smsSendUserList.GetSemdUserList(smsID);

       #region 删除重复用户
        for (int t = 0; t < dt.Rows.Count;t++ )
        {
           int count1 = smsSendUserList.DeleteRepeat(smsID);
        }
       #endregion
        try
        {
            DataTable dtb = smsSendUserList.GetSemdUserList(smsID);
            count = countSMS + dtb.Rows.Count;
          
            if (count <= totalSMS) //已发短信统计
            {
                
                for (int i = 0; i < dtb.Rows.Count; i++)
                {
                    string mobile = dtb.Rows[i]["Mobile"].ToString();
                    trade = userInfo.GetTradeByMobile(mobile);
                    string companyID = "001";
                    smsInfo.Send(mobile, smsContent, trade);                    
                    sendSMS.SendingSMS(mobile, smsContent, trade, companyID, pretime);
                    countSendUser++;
                }
                try
                {
                    smsInfo.UpdateCountSMSInfo(countSendUser, 0, smsID);
                    smsInfo.ChangeSMSFlagAndSetSendManID(smsID, userID);//AreadySendSMS.aspx?SMSType=1
                    Response.Write("<script language='javascript'>alert('发送短信成功!');</script>");//SubmisionMsg.aspx?SMSType=1
                    string url = string.Format("<script>window.location.href ='SubmisionMsg.aspx?SMSType={0}'</script>", Request.QueryString[0].ToString());
                    Response.Write("<script>top.Title.window.location='../TreeViewPage.aspx'</script>");
                    Response.Write(url);
                }
                catch
                {
                    this.lbBZ.Text = "<script language='javascript'>alert('请选择要发送的用户!');</script>";
                    string url = string.Format("<script>window.location.href ='SubmisionMsg.aspx?SMSType={0}'</script>", Request.QueryString[0].ToString());
                    Response.Write(url);
                }
            }
            else
            {
                int remnantCount1 = totalSMS - countSMS;
                this.lbCount.Text = "当前剩下可发短信数量为:"+ remnantCount1.ToString();
                //int remnantCount = 15 - count;//当前可以发的条数:'+remnantCount(15-count)'你所发短信已超出充许的最大条数!当前可以发的条数:'
                this.lbBZ.Text = "<script language='javascript'>alert('你所发短信已超出充许的最大条数!');</script>";
            }
        }

        catch
        {
            Response.Write("<script language='javascript'>alert('发送短信失败!');</script>");
            string url = string.Format("<script>window.location.href ='SubmisionMsg.aspx?SMSType={0}'</script>", Request.QueryString[2].ToString());
            Response.Write(url);
        }
    }
    #endregion
    protected void btnDelete_Click(object sender, EventArgs e)
    {
        ArrayList smsList;
        //if (gvAllSMS.Visible)
        //    smsList = CheckUserManyChoose(gvAllSMS);
        //else
            smsList = CheckUserManyChoose(gvResult);

        if (smsList.Count > 0)
        {
            smsInfoAccessor = new DataAccess.TableAccessor.SMSInfo();
            for (int i = 0; i < smsList.Count; i++)
            {
                try
                {
                    int smsID = int.Parse(smsList[i].ToString());
                    smsInfoAccessor.DeleteSMSInfo(smsID);
                }
                catch
                {
                    Response.Write("<script language='javascript'>alert('删除短信失败!');</script>");
                    return;
                }
            }
            Response.Write("<script language='javascript'>alert('删除短信成功!');</script>");
            Response.Write("<script>top.Title.window.location='../TreeViewPage.aspx'</script>");
        }
        else
        {
            Response.Write("<script language='javascript'>alert('删除短信失败!');</script>");
            string strUrl = string.Format("<script>window.location.href = 'SubmisionMsg.aspx?smsType={0}'</script>",
                int.Parse(Request.QueryString[0].ToString()));
            Response.Write(strUrl);
        }

        string goUrl = string.Format("<script>window.location.href = 'SubmisionMsg.aspx?smsType={0}'</script>",
            int.Parse(Request.QueryString[0].ToString()));
        Response.Write(goUrl);
    }

    private void FillLbl(int smstype)
    {
        smstypeAccessor = new DataAccess.TableAccessor.SMSTypeInfo();
        DataSet ds = smstypeAccessor.GetSmsTypeName(smstype);
        string SmsTypename = ds.Tables["Table"].Rows[0][0].ToString();
        string lblstring = string.Format("位置: &nbsp; 短信管理 &nbsp;>  &nbsp; {0}待审核", SmsTypename);
        this.Label1.Text = lblstring;
    }

    protected void btnQuery_Click(object sender, EventArgs e)
    {
        int smsType = int.Parse(Request.QueryString[0].ToString());
        FillGridView(smsType);
    }


    protected void gvResult_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        gvResult.PageIndex = e.NewPageIndex;
        //FillGrid(int.Parse(Request.QueryString[0].ToString()));
        FillGridView(int.Parse(Request.QueryString[0].ToString()));

    }

    protected void gvResult_SelectedIndexChanged(object sender, EventArgs e)
    {
       // FillGridView 
    }
}

⌨️ 快捷键说明

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