📄 guestchat.aspx.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;
using WebHelper.Model;
public partial class GuestChat : MyPage
{
Guest guest;
protected void Page_Load(object sender, EventArgs e)
{
if (Session["GUEST"] == null)
Session["GUEST"] = new Guest(Session.SessionID);
guest = (Guest)Session["GUEST"];
if (guest == null)
{
Response.StatusCode = 803;
return;
}
switch (Request.Form["Opt"])
{
case "new":
Login();
break;
case "GetResult":
GetResult();
break;
case "SendAsk":
SendAsk();
break;
case "LoginOut":
LoginOut();
break;
}
Response.End();
}
private void SendAsk()
{
if (guest.Worker == null)
{
Response.StatusCode = 805;
return;
}
if (!worker.All.ContainsKey(guest.Worker))
{
Response.Write("0");//重大问题,客服不小心被删除
Response.StatusCode = 801;
}
if (!worker.All[guest.Worker].Guest.ContainsKey(guest.Name))
{
Response.Write("-1");//重大问题,关联发生错乱
Response.StatusCode = 801;
}
guest.LogData.Add("<msg time='" + DateTime.Now + "' from='0'><![CDATA[" + Request.Form["Message"].Replace("'", "⊕") + "]]></msg>");
worker.All[guest.Worker].Message = "'" + guest.GuestID + "':'" + Request.Form["Message"].Replace("'", "⊕") + "'";
Response.StatusCode = 800;
}
private void Login()
{
guest.Email=Request.Form["Email"];
guest.Name=Request.Form["Name"];
int type = 0;
if(!int.TryParse(Request.Form["AskType"],out type))
{
Response.StatusCode = 801;
return;
}
guest.AskType = type;
if (!worker.Allot(guest))
{
//Response.Write("0");//没有客服在线
Response.StatusCode = 801;
}
else
{
//Response.Write("1");
Response.Write(worker.All[guest.Worker].Title);
Response.StatusCode = 800;
}
}
/// <summary>
/// 取得回复,页面刷新
/// </summary>
private void GetResult()
{
if (guest.Worker == null)
{
Response.StatusCode = 805;
return;
}
else
{
if (worker.All[guest.Worker].Status == 0)
{
Response.StatusCode = 805;
return;
}
}
Response.Write("['");
Response.Write(worker.All[guest.Worker].Title);
Response.Write("',");
Response.Write( guest.Message);
Response.Write("]");
Response.StatusCode = 804;
}
private void LoginOut()
{
if (guest.Worker == null) { guest = null; return; }
if (worker.All.ContainsKey(guest.Worker))
worker.All[guest.Worker].Guest.Remove(guest.GuestID);
guest.CreateLog();
guest = null;
Session["GUEST"] = null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -