protected void Page_Load(object sender, EventArgs e) { iks = CY.UME.Core.Business.InstantlyKillingSingleton.Instance; ik = iks.Instantlykilling; if (!IsPostBack && ik != null) { BindRobot(ik.RobotId, ik.RobotNum, ""); } //IList<CY.UME.Core.Business.Account> accountList = Core.Business.Account.GetRobotByEmail("killing", 100, "[Account].[Id]"); //Label1.Text = ""; //for (int i = 0; i < accountList.Count; i++) //{ // Label1.Text += "UPDATE Account SET [Name] = '" + accountList[i].Name + "' WHERE Id = " + accountList[i].Id + "--" + (i + 1) + "<br/>"; //} }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/json"; ik = iks.Instantlykilling; DateTime BeginTime; int times = 0; if (context.Request.Form["Times"] == null || !int.TryParse(context.Request.Form["Times"].ToString(), out times)) { ; } BeginTime = ik.BeginTime; if (ik == null || (!ik.IsEnable && ik.IsEnd)) { context.Response.Write("{s:-1,n:'" + ik.AccountName + "',d:'" + ik.EndTime.ToString("yyyy-MM-dd HH:mm:ss") + "',IKList:[" + GetLastIKLog(ik.Id) + "]}"); return; } //int state = -2;//-3时间到了 -2未开拍 -1活动已结束 0倒计时 1有人竞拍 int count = 0; if (DateTime.Now < BeginTime) { TimeSpan ts = new TimeSpan(BeginTime.Ticks - DateTime.Now.Ticks); context.Response.Write("{s:-2,t:" + ts.TotalSeconds + "}"); } else if (iks.IsEnd == false && iks.Instantlykilling.IsEnd == false) { if (DateTime.Now <= iks.Instantlykilling.EndTime && BeginTime <= DateTime.Now)// {// 运行时间小于等于剩余时间 while (true) { if (iks.CountDown > 0) {//倒计时剩余时间大于0 if (times == 0 || times < iks.Num) {//0倒计时 int TotalAction = Core.Business.InstantlyKillingLog.GetIKCountByInstansIdAndAccountId(ik.Id, iks.AccountId); context.Response.Write("{s:1,e:" + iks.IsEnd.ToString().ToLower() + ",t:" + iks.CountDown + ",c:" + ik.Integral + ",n:'" + iks.Name + "',ts:" + iks.Num + ", total:" + (TotalAction * ik.Integral) + ",d:'" + iks.BidTime.ToString("HH:mm:ss") + "'}"); break; } else { count++; if (count > 5) { context.Response.Write("{s:0,t:" + iks.CountDown + "}"); break; } System.Threading.Thread.Sleep(500); continue; } //System.Threading.Thread.Sleep(100);// 无法访问的代码 } else if (iks.IsEnd) {//活动结束 CY.UME.Core.Business.InstantlyKilling EndIK = CY.UME.Core.Business.InstantlyKilling.Load(ik.Id); iks.IsEnd = true; EndIK.IsEnd = true; EndIK.IsEnable = false; EndIK.AccountId = iks.AccountId; EndIK.AccountName = iks.Name; //EndIK.EndTime = DateTime.Now; EndIK.Save(); CY.UME.Core.Business.InstantlyKillingSingleton.EndCountDownTiming(); context.Response.Write("{s:-1,n:'" + ik.AccountName + "',IKList:[" + GetLastIKLog(ik.Id) + "]}"); return; } else if (DateTime.Now < ik.BeginTime) {//当前时间小于开始时间,活动还没有开始 TimeSpan ts = new TimeSpan(BeginTime.Ticks - DateTime.Now.Ticks); context.Response.Write("{s:-2,t:" + CY.Utility.Common.ConvertUtility.ConvertToLong(ts.TotalSeconds, 0) + "}"); return; } else {//机器人的时间到了后,也没有人继续拍了。 CY.UME.Core.Business.InstantlyKilling EndIK = CY.UME.Core.Business.InstantlyKilling.Load(ik.Id); iks.IsEnd = true; EndIK.IsEnd = true; EndIK.IsEnable = false; EndIK.AccountId = iks.AccountId; EndIK.AccountName = iks.Name; //EndIK.EndTime = DateTime.Now; EndIK.Save(); CY.UME.Core.Business.InstantlyKillingSingleton.EndCountDownTiming(); string EndTime = CY.UME.Core.Business.InstantlyKillingLog.GetLastIKLog(ik.Id).AddSeconds(ik.Seconds).ToString("yyyy-MM-dd HH:mm:ss"); context.Response.Write("{s:-1,i:" + EndIK.AccountId + ",n:'" + EndIK.AccountName + "',c:" + ik.Integral + ",d:'" + EndTime + "'}"); return; } } } else {// 时间到了 CY.UME.Core.Business.InstantlyKillingSingleton.EndCountDownTiming(); string EndTime = CY.UME.Core.Business.InstantlyKillingLog.GetLastIKLog(ik.Id).AddSeconds(ik.Seconds).ToString("yyyy-MM-dd HH:mm:ss"); context.Response.Write("{s:-3,i:" + iks.AccountId + ",n:'" + iks.Name + "',c:" + ik.Integral + ",d:'" + EndTime + "'}"); return; } } else {//活动结束 iks.IsEnd = true; CY.UME.Core.Business.InstantlyKillingSingleton.EndCountDownTiming(); string EndTime = CY.UME.Core.Business.InstantlyKillingLog.GetLastIKLog(ik.Id).AddSeconds(ik.Seconds).ToString("yyyy-MM-dd HH:mm:ss"); context.Response.Write("{s:-1,i:" + iks.AccountId + ",n:'" + iks.Name + "',c:" + ik.Integral + ",d:'" + EndTime + "',IKList:[" + GetLastIKLog(ik.Id) + "]}"); return; } }
protected void Page_Load(object sender, EventArgs e) { CY.UME.Core.Business.InstantlyKillingSingleton iks = CY.UME.Core.Business.InstantlyKillingSingleton.Instance; NowKillingObj = iks.Instantlykilling; }
private void Bind() { if (Request.QueryString["ikid"] == null) { return; } SetTitle("秒杀商品修改"); btnAdd.Visible = false; long ikid = CY.Utility.Common.ConvertUtility.ConvertToLong(Request.QueryString["ikid"], -1); if (ikid == -1) { LblBackBtn.Text = ""; LblMsg.Text = "参数错误。<input id=\"Button1\" type=\"button\" value=\" 单击返回 \" onclick=\"window.history.back();\" />"; return; } btnSave.Visible = true; ik = CY.UME.Core.Business.InstantlyKilling.Load(ikid); if (ik == null) { LblMsg.Text = "该商品不存在或已删除。"; return; } else { //ViewState["InstantlyKilling"] = Ik; IK_Id.Value = ik.Id.ToString(); TxtName.Text = ik.Name; TxtIntegral.Text = ik.Integral.ToString(); TxtReferencePrice.Text = ik.ReferencePrice.ToString(); TxtBeginTime.Text = String.Format("{0:yyyy-MM-dd HH:mm:ss}", ik.BeginTime); TxtTotalTime.Text = ik.TotalTime.ToString(); TxtRobotId.Text = ik.RobotId; TxtRobotNum.Text = ik.RobotNum.ToString(); TxtInterfereNum.Text = String.Format("{0:yyyy-MM-dd HH:mm:ss}", ik.InterfereNum); TxtProductInfo.Text = ik.ProductInfo; ImagePath.ImageUrl = SiteUrl + "/InstantlyKilling/Img/" + ik.ImagePath; CHKIsEnd.Checked = ik.IsEnd; CHKIsEnable.Checked = ik.IsEnable; TxtSeconds.Text = ik.Seconds.ToString().Trim(); TxtEndTime.Text = String.Format("{0:yyyy-MM-dd HH:mm:ss}", ik.EndTime); ; IsEnable = ik.IsEnable;// 后面保存和修改的时候使用 } }
/// <summary> /// 新增 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnAdd_Click(object sender, EventArgs e) { LblMsg.Text = ""; FileName = Guid.NewGuid() + Path.GetExtension(FileImagePath.FileName); try { CY.UME.Core.Business.InstantlyKilling ikadd = new CY.UME.Core.Business.InstantlyKilling(); ikadd.Name = TxtName.Text.Trim(); ikadd.DateCreated = DateTime.Now; ikadd.Integral = CY.Utility.Common.ConvertUtility.ConvertToDouble(TxtIntegral.Text.Trim(), 5); ikadd.ReferencePrice = CY.Utility.Common.ConvertUtility.ConvertToDouble(TxtReferencePrice.Text.Trim(), 2000); ikadd.BeginTime = CY.Utility.Common.ConvertUtility.ConvertToDateTime(TxtBeginTime.Text.Trim()); ikadd.TotalTime = CY.Utility.Common.ConvertUtility.ConvertToInt(TxtTotalTime.Text.Trim(), 60); ikadd.RobotId = TxtRobotId.Text.Trim(); ikadd.RobotNum = CY.Utility.Common.ConvertUtility.ConvertToInt(TxtRobotNum.Text.Trim(), 30); ikadd.InterfereNum = CY.Utility.Common.ConvertUtility.ConvertToDateTime(TxtInterfereNum.Text.Trim()); ikadd.ProductInfo = TxtProductInfo.Text.Trim(); ikadd.EndTime = CY.Utility.Common.ConvertUtility.ConvertToDateTime(TxtEndTime.Text.Trim()); ikadd.Seconds = CY.Utility.Common.ConvertUtility.ConvertToInt(TxtSeconds.Text.Trim(), 8); if (FileImagePath.FileName != "") { ikadd.ImagePath = FileName; UpPic(); } UpImg(); if (CHKIsEnable.Checked) { if (CY.UME.Core.Business.InstantlyKilling.GetIKIsEnableNum(1) == 0) { ikadd.IsEnable = CHKIsEnable.Checked; } else { ikadd.IsEnable = false; msg += "同时只能有一个倒计时开启。"; } } else { ikadd.IsEnable = false; } ikadd.IsEnd = CHKIsEnable.Checked; ikadd.Save(); if (CHKIsEnable.Checked && CY.UME.Core.Business.InstantlyKilling.GetIKIsEnableNum(1) == 1) { Core.Business.InstantlyKillingSingleton.Initialize(); } LblMsg.Text = "新增成功<br/>" + msg; } catch (Exception ex) { LblMsg.Text = "新增失败:" + ex.Message + "<br/>" + msg; } }
public static void InitializeKilling() { isEnd = false; instantlykilling = CY.UME.Core.Business.InstantlyKilling.GetIKByEnable(); if (instantlykilling == null) { instantlykilling = Core.Business.InstantlyKilling.GetIKLastByLogInstanceId(); Instance.AccountId = instantlykilling.AccountId; Instance.Name = instantlykilling.AccountName; } }
private void bindMessage() { CY.UME.Core.PagingInfo pagingInfo = new CY.UME.Core.PagingInfo(); pagingInfo.CurrentPage = AspNetPager1.CurrentPageIndex; pagingInfo.PageSize = AspNetPager1.PageSize = SetCurrentPageSize.CurrentPageSize; IList<CY.UME.Core.Business.SpaceComment> LeaveList = CY.UME.Core.Business.InstantlyKilling.GetAllLeaveList(pagingInfo); List<LeaveMessage> LeaveMessages = new List<LeaveMessage>(); for (int i = 0; i < LeaveList.Count; i++) { CY.UME.Core.Business.Account acc = CY.UME.Core.Business.Account.Load(LeaveList[i].AuthorId); if (acc != null) { LeaveMessage lm = new LeaveMessage(); lm.Id = LeaveList[i].Id; lm.InstanceId = LeaveList[i].InstanceId; lm.AccountId = LeaveList[i].AccountId; lm.AuthorId = LeaveList[i].AuthorId; lm.AuthorName = acc.Name; lm.Content = LeaveList[i].Content; lm.IP = LeaveList[i].IP; lm.DateCreated = LeaveList[i].DateCreated; lm.ReferedId = LeaveList[i].ReferedId; lm.IsPublic = LeaveList[i].IsPublic; LeaveMessages.Add(lm); } } if (LeaveMessages != null && LeaveMessages.Count >= 1) { CY.UME.Core.Business.InstantlyKilling kill = new CY.UME.Core.Business.InstantlyKilling(); AspNetPager1.RecordCount = kill.GetLevelWordsCount(); Repeater1.DataSource = LeaveMessages; Repeater1.DataBind(); } }