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("位置: 短信管理 > {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 + -
显示快捷键?