/// <summary> /// 获取商品列表 /// </summary> /// <param name="context"></param> public void MobileGetAwardList(HttpContext context) { AjaxJsonValid ajv = new AjaxJsonValid(); int page = GameRequest.GetQueryInt("page", 1); int pageSize = GameRequest.GetQueryInt("pageSize", 20); string orderBy = "ORDER BY SortID DESC"; string where = " WHERE Nullity=0"; PagerSet pagerSet = FacadeManage.aideNativeWebFacade.GetList(AwardInfo.Tablename, page, pageSize, orderBy, where); IList <AwardInfo> list = DataHelper.ConvertDataTableToObjects <AwardInfo>(pagerSet.PageSet.Tables[0]); if (list != null) { foreach (AwardInfo item in list) { item.SmallImage = Fetch.GetUploadFileUrl(item.SmallImage); item.BigImage = Fetch.GetUploadFileUrl(item.BigImage); } } ajv.AddDataItem("List", list); ajv.AddDataItem("RecordCount", pagerSet.RecordCount); ajv.SetValidDataValue(true); context.Response.Write(ajv.SerializeToJson()); }
public string GetHeadUserInfo() { AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); Game.Utils.Template template; if (Fetch.IsUserOnline()) { template = new Game.Utils.Template("/Template/HeadUserInfo.html"); template.VariableDataScoureList = new System.Collections.Generic.Dictionary <string, object> { { "accounts", Fetch.GetUserCookie().Accounts } }; } else { template = new Game.Utils.Template("/Template/HeadNotLogon.html"); } ajaxJsonValid.AddDataItem("html", template.OutputHTML()); ajaxJsonValid.SetValidDataValue(true); return(ajaxJsonValid.SerializeToJson()); }
/// <summary> /// 获取token /// </summary> private static void Gettoken() { string token = ""; if (HttpRuntime.Cache.Get("token") != null) { token = HttpRuntime.Cache.Get("token").ToString(); HttpRuntime.Cache.Remove("token"); _ajv.SetValidDataValue(true); _ajv.SetDataItem("token", token); return; } _ajv.code = (int)ApiCode.Unauthorized; _ajv.msg = EnumHelper.GetDesc(ApiCode.Unauthorized); }
/// <summary> /// 购买商品 /// </summary> /// <param name="context"></param> private void BuyAward(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); int userid = GameRequest.GetQueryInt("userid", 0); //判断登录 //if (!Fetch.IsUserOnline()) //{ // ajaxJson.code = 1; // ajaxJson.msg = "请先登录"; // context.Response.Write(ajaxJson.SerializeToJson()); // return; //} //获取参数 // int typeID = GameRequest.GetQueryInt("TypeID", 0); int awardID = GameRequest.GetQueryInt("awardID", 0); //商品ID int counts = GameRequest.GetQueryInt("counts", 0); //购买数量 AccountsInfo userinfo = FacadeManage.aideAccountsFacade.GetAccountsInfoByUserID(userid); //验证奖品 if (awardID == 0) { ajaxJson.msg = "非常抱歉,你所选购的商品不存在!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证数量 if (counts <= 0) { ajaxJson.msg = "请输入正确的兑换数量!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (counts > 100) { ajaxJson.msg = "兑换数量不能超过100!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(awardID); AwardUser awardUser = FacadeManage.aideNativeWebFacade.GetAwardUser(userid); //验证用户 UserCurrency Currency = FacadeManage.aideTreasureFacade.GetUserCurrency(userid); //验证余额 int totalAmount = awardInfo.UnitPrice * counts; //总金额 if (totalAmount <= 0) { ajaxJson.msg = "很抱歉!兑换的奖品配置额度太大或为零"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (totalAmount > (Currency == null?0:Currency.AwardTicket)) { ajaxJson.msg = "很抱歉!您的奖券数不足,不能兑换该奖品"; ajaxJson.code = -1; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证库存 if (awardInfo.Inventory <= 0 && awardInfo.AwardType != 1) { ajaxJson.msg = "很抱歉!奖品的库存数不足,请更新其他奖品或者等待补充库存"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //扣除奖牌 Currency.AwardTicket = Currency.AwardTicket - totalAmount; //更新奖牌 AwardOrder awardOrder = new AwardOrder(); awardOrder.OrderID = Fetch.GetOrderIDByPrefix("XT"); awardOrder.UserID = Currency.UserID; awardOrder.GameID = userinfo.GameID; awardOrder.AwardID = awardID; awardOrder.AwardType = awardInfo.AwardType; awardOrder.AwardName = awardInfo.AwardName; awardOrder.UnitPrice = awardInfo.UnitPrice; awardOrder.BuyNum = counts; awardOrder.PayTicket = totalAmount; awardOrder.Gold = awardInfo.Gold; awardOrder.Diamond = awardInfo.Diamond; awardOrder.Compellation = awardUser == null?"": awardUser.Compellation; awardOrder.MobilePhone = awardUser == null ? "" : awardUser.MobilePhone; awardOrder.Province = awardUser == null ? "" : awardUser.Province; awardOrder.City = awardUser == null ? "" : awardUser.City; awardOrder.Area = awardUser == null ? "" : awardUser.Area; awardOrder.DetailAddress = awardUser == null ? "" : awardUser.DetailAddress; awardOrder.ClinetIP = Utility.UserIP; msg = FacadeManage.aideNativeWebFacade.BuyAward(awardOrder); if (msg.Success) { ajaxJson.SetValidDataValue(true); ajaxJson.msg = "兑换成功!实物商品请注意查收"; if (awardInfo.AwardType == 1) { ajaxJson.msg = "兑换成功!将在5分钟内发放至游戏中"; } awardOrder = msg.EntityList[0] as AwardOrder; ajaxJson.SetDataItem("rs", 1); context.Response.Write(ajaxJson.SerializeToJson()); } else { ajaxJson.msg = msg.Content; ajaxJson.SetDataItem("rs", -1); context.Response.Write(ajaxJson.SerializeToJson()); } }
private void SetAwardUser(HttpContext context) { AjaxJsonValid ajaxJson = new AjaxJsonValid(); Message msg = new Message(); int userid = GameRequest.GetQueryInt("userid", 0); string settype = TextFilter.FilterScript(GameRequest.GetQueryString("settype")); //设置类型update修改insert添加 string compellation = TextFilter.FilterScript(GameRequest.GetQueryString("name")); //真实姓名 string mobilePhone = TextFilter.FilterScript(GameRequest.GetQueryString("phone")); //移动电话 string province = GameRequest.GetQueryString("province"); //省份 string city = GameRequest.GetQueryString("city"); //城市 string area = GameRequest.GetQueryString("area"); //地区 string dwellingPlace = TextFilter.FilterScript(GameRequest.GetQueryString("address")); //详细地址 //验证真实姓名 msg = CheckingRealNameFormat(compellation, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的收件人"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证手机号 msg = CheckingMobilePhoneNumFormat(mobilePhone, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的手机号码"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证地址邮编 if (province.Length < 1) { ajaxJson.msg = "请选择省份"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (city.Length < 1) { ajaxJson.msg = "请选择城市"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (area.Length < 1) { ajaxJson.msg = "请选择地区"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (string.IsNullOrEmpty(dwellingPlace)) { ajaxJson.msg = "请输入详细地址"; context.Response.Write(ajaxJson.SerializeToJson()); return; } AwardUser awardUser = new AwardUser(); awardUser.UserID = userid; awardUser.Compellation = compellation; awardUser.MobilePhone = mobilePhone; awardUser.Province = province; awardUser.City = city; awardUser.Area = area; awardUser.DetailAddress = dwellingPlace; if (settype == "update") { int rs = FacadeManage.aideNativeWebFacade.updateAwardUser(awardUser); if (rs > 0) { ajaxJson.msg = "修改成功"; ajaxJson.SetValidDataValue(true); ajaxJson.SetDataItem("rs", 1); context.Response.Write(ajaxJson.SerializeToJson()); return; } else { ajaxJson.msg = "修改失败"; ajaxJson.SetDataItem("rs", -1); context.Response.Write(ajaxJson.SerializeToJson()); return; } } if (settype == "insert") { int rs = FacadeManage.aideNativeWebFacade.insertAwardUser(awardUser); if (rs > 0) { ajaxJson.msg = "提交成功"; ajaxJson.SetValidDataValue(true); ajaxJson.SetDataItem("rs", 1); context.Response.Write(ajaxJson.SerializeToJson()); return; } else { ajaxJson.msg = "提交失败"; ajaxJson.SetDataItem("rs", -1); context.Response.Write(ajaxJson.SerializeToJson()); return; } } }
public void MobileBuyAward(System.Web.HttpContext context) { Message message = new Message(); AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); int formInt = GameRequest.GetFormInt("userID", 0); string formString = GameRequest.GetFormString("signature"); string formString2 = GameRequest.GetFormString("time"); Message message2 = FacadeManage.aideAccountsFacade.CheckUserSignature(formInt, formString2, formString); if (!message2.Success) { ajaxJsonValid.msg = message2.Content; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { int formInt2 = GameRequest.GetFormInt("awardID", 0); int formInt3 = GameRequest.GetFormInt("counts", 0); string text = TextFilter.FilterScript(GameRequest.GetFormString("name")); string text2 = TextFilter.FilterScript(GameRequest.GetFormString("phone")); int formInt4 = GameRequest.GetFormInt("province", -1); int formInt5 = GameRequest.GetFormInt("city", -1); int formInt6 = GameRequest.GetFormInt("area", -1); string text3 = TextFilter.FilterScript(GameRequest.GetFormString("address")); if (formInt2 == 0) { ajaxJsonValid.msg = "非常抱歉,你所选购的商品不存在!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt3 <= 0) { ajaxJsonValid.msg = "请输入正确的兑换数量!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt3 > 99) { ajaxJsonValid.msg = "每次兑换的数量最多为 99 件"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(formInt2); message = Shop.CheckingRealNameFormat(text, false); if (!message.Success) { ajaxJsonValid.msg = "请输入正确的收件人"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { message = Shop.CheckingMobilePhoneNumFormat(text2, false); if (!message.Success) { ajaxJsonValid.msg = "请输入正确的手机号码"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt4 == -1) { ajaxJsonValid.msg = "请选择省份"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt5 == -1) { ajaxJsonValid.msg = "请选择城市"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt6 == -1) { ajaxJsonValid.msg = "请选择地区"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (string.IsNullOrEmpty(text3)) { ajaxJsonValid.msg = "请输入详细地址"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (awardInfo.Price > 20000000) { ajaxJsonValid.msg = "很抱歉,该商品暂停兑换!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { UserInfo userInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(formInt, 0, "").EntityList[0] as UserInfo; int num = awardInfo.Price * formInt3; if (num > userInfo.UserMedal) { ajaxJsonValid.msg = "很抱歉!您的元宝数不足,不能兑换该奖品"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (awardInfo.Inventory <= formInt3) { ajaxJsonValid.msg = "很抱歉!奖品的库存数不足,请更新其他奖品或者等待补充库存"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { userInfo.UserMedal -= num; AwardOrder awardOrder = new AwardOrder(); awardOrder.UserID = userInfo.UserID; awardOrder.AwardID = formInt2; awardOrder.AwardPrice = awardInfo.Price; awardOrder.AwardCount = formInt3; awardOrder.TotalAmount = num; awardOrder.Compellation = text; awardOrder.MobilePhone = text2; awardOrder.QQ = ""; awardOrder.Province = formInt4; awardOrder.City = formInt5; awardOrder.Area = formInt6; awardOrder.DwellingPlace = text3; awardOrder.PostalCode = ""; awardOrder.BuyIP = Utility.UserIP; message = FacadeManage.aideNativeWebFacade.BuyAward(awardOrder); if (message.Success) { ajaxJsonValid.SetValidDataValue(true); ajaxJsonValid.msg = "恭喜您!兑换成功"; awardOrder = (message.EntityList[0] as AwardOrder); context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { ajaxJsonValid.msg = message.Content; context.Response.Write(ajaxJsonValid.SerializeToJson()); } } } } } } } } } } } } } } }
public string AccountReport() { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); int inputItem = 0; //输入项数 string reportEmail = GameRequest.GetFormString("reportEmail"); //申诉邮箱 string account = GameRequest.GetFormString("txtUser"); //申诉帐号 string regDate = GameRequest.GetFormString("regDate"); //注册日期 string realName = GameRequest.GetFormString("realName"); //真实姓名 string idCard = GameRequest.GetFormString("idCard"); //身份证号 string mobile = GameRequest.GetFormString("mobile"); //手机号码 string nicknameOne = GameRequest.GetFormString("nicknameOne"); //历史昵称1 string nicknameTwo = GameRequest.GetFormString("nicknameTwo"); //历史昵称2 string nicknameThree = GameRequest.GetFormString("nicknameThree"); //历史昵称3 string passwordOne = GameRequest.GetFormString("passwordOne"); //历史密码1 string passwordTwo = GameRequest.GetFormString("passwordTwo"); //历史密码2 string passwordThree = GameRequest.GetFormString("passwordThree"); //历史密码3 string questionOne = GameRequest.GetFormString("questionOne"); //密保问题1 string answerOne = GameRequest.GetFormString("answerOne"); //密保答案1 string questionTwo = GameRequest.GetFormString("questionTwo"); //密保问题2 string answerTwo = GameRequest.GetFormString("answerTwo"); //密保答案2 string questionThree = GameRequest.GetFormString("questionThree"); //密保问题3 string answerThree = GameRequest.GetFormString("answerThree"); //密保答案3 string suppInfo = GameRequest.GetFormString("suppInfo"); //补充资料 #region 参数验证 //验证申诉邮箱 msg = InputDataValidate.CheckingEmail(reportEmail); if (!msg.Success) { ajaxJson.msg = "申诉结果接受邮箱输入有误"; return(ajaxJson.SerializeToJson()); } //验证申诉帐号 msg = InputDataValidate.CheckingUserNameFormat(account); if (!msg.Success) { ajaxJson.msg = "申诉帐号输入有误"; return(ajaxJson.SerializeToJson()); } //验证注册日期 if (!string.IsNullOrEmpty(regDate)) { if (!Utils.Validate.IsShortDate(regDate)) { ajaxJson.msg = "注册日期输入有误"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证真实姓名 if (!string.IsNullOrEmpty(realName)) { msg = InputDataValidate.CheckingRealNameFormat(realName, true); if (!msg.Success) { ajaxJson.msg = "真实姓名输入有误"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证身份证号 if (!string.IsNullOrEmpty(idCard)) { msg = InputDataValidate.CheckingIDCardFormat(idCard, true); if (!msg.Success) { ajaxJson.msg = "身份证号输入有误"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证移动电话 if (!string.IsNullOrEmpty(mobile)) { msg = InputDataValidate.CheckingMobilePhoneNumFormat(mobile, true); if (!msg.Success) { ajaxJson.msg = "移动电话输入有误"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证历史昵称 if (!string.IsNullOrEmpty(nicknameOne)) { msg = InputDataValidate.CheckingNickNameFormat(nicknameOne); if (!msg.Success) { ajaxJson.msg = "历史昵称1输入有误"; return(ajaxJson.SerializeToJson()); } inputItem++; } if (!string.IsNullOrEmpty(nicknameTwo)) { msg = InputDataValidate.CheckingNickNameFormat(nicknameTwo); if (!msg.Success) { ajaxJson.msg = "历史昵称2输入有误"; return(ajaxJson.SerializeToJson()); } if (nicknameTwo == nicknameOne) { ajaxJson.msg = "历史昵称不能相同"; return(ajaxJson.SerializeToJson()); } inputItem++; } if (!string.IsNullOrEmpty(nicknameThree)) { msg = InputDataValidate.CheckingNickNameFormat(nicknameThree); if (!msg.Success) { ajaxJson.msg = "历史昵称3输入有误"; return(ajaxJson.SerializeToJson()); } if (nicknameThree == nicknameOne || nicknameThree == nicknameTwo) { ajaxJson.msg = "历史昵称不能相同"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证密码 if (!string.IsNullOrEmpty(passwordOne)) { inputItem++; } if (!string.IsNullOrEmpty(passwordTwo)) { if (passwordTwo == passwordOne) { ajaxJson.msg = "历史密码不能相同"; return(ajaxJson.SerializeToJson()); } inputItem++; } if (!string.IsNullOrEmpty(passwordThree)) { if (passwordThree == passwordTwo || passwordThree == passwordOne) { ajaxJson.msg = "历史密码不能相同"; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证密保 if (questionOne != "0") { msg = InputDataValidate.CheckingProtectAnswer(answerOne, 1, false); if (!msg.Success) { ajaxJson.msg = msg.Content; return(ajaxJson.SerializeToJson()); } inputItem++; } if (questionTwo != "0") { if (questionOne == questionTwo) { ajaxJson.msg = "密保问题不能相同"; return(ajaxJson.SerializeToJson()); } msg = InputDataValidate.CheckingProtectAnswer(answerOne, 2, false); if (!msg.Success) { ajaxJson.msg = msg.Content; return(ajaxJson.SerializeToJson()); } inputItem++; } if (questionThree != "0") { if (questionThree == questionOne || questionThree == questionTwo) { ajaxJson.msg = "密保问题不能相同"; return(ajaxJson.SerializeToJson()); } msg = InputDataValidate.CheckingProtectAnswer(answerOne, 3, false); if (!msg.Success) { ajaxJson.msg = msg.Content; return(ajaxJson.SerializeToJson()); } inputItem++; } //验证补充资料 msg = InputDataValidate.CheckingProtectAnswer(suppInfo, true); if (!msg.Success) { ajaxJson.msg = "补全资料太长,最长不能超过200个字符"; return(ajaxJson.SerializeToJson()); } //申诉项数验证 if (inputItem < 4) { ajaxJson.msg = "为了保证您的申诉请求审核通过,请输入至少4项资料,不包括补充资料"; return(ajaxJson.SerializeToJson()); } #endregion //检测帐号 Message userMsg = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(0, 0, account); if (!userMsg.Success) { ajaxJson.msg = "您所申诉的帐号不存在"; return(ajaxJson.SerializeToJson()); } UserInfo userInfo = userMsg.EntityList[0] as UserInfo; if (userInfo == null) { ajaxJson.msg = "您所申诉的帐号不存在"; return(ajaxJson.SerializeToJson()); } //申诉实体信息 LossReport lossReport = new LossReport(); lossReport.ReportNo = Fetch.GetForgetPwdNumber(); lossReport.ReportEmail = reportEmail; lossReport.Accounts = account; lossReport.RegisterDate = regDate; lossReport.Compellation = realName; lossReport.PassportID = idCard; lossReport.MobilePhone = mobile; lossReport.OldNickName1 = nicknameOne; lossReport.OldNickName2 = nicknameTwo; lossReport.OldNickName3 = nicknameThree; if (!string.IsNullOrEmpty(passwordOne)) { lossReport.OldLogonPass1 = Utility.MD5(passwordOne); } if (!string.IsNullOrEmpty(passwordTwo)) { lossReport.OldLogonPass2 = Utility.MD5(passwordTwo); } if (!string.IsNullOrEmpty(passwordThree)) { lossReport.OldLogonPass3 = Utility.MD5(passwordThree); } lossReport.ReportIP = GameRequest.GetUserIP(); lossReport.Random = Utils.TextUtility.CreateRandom(4, 1, 0, 0, 0, ""); lossReport.GameID = userInfo.GameID; lossReport.UserID = userInfo.UserID; lossReport.OldQuestion1 = questionOne; lossReport.OldResponse1 = answerOne; lossReport.OldQuestion2 = questionTwo; lossReport.OldResponse2 = answerTwo; lossReport.OldQuestion3 = questionThree; lossReport.OldResponse3 = answerThree; lossReport.SuppInfo = suppInfo; //保存数据 try { FacadeManage.aideNativeWebFacade.SaveLossReport(lossReport); ajaxJson.SetValidDataValue(true); string url = string.Format("Complaint-Setp-2.aspx?number={0}&account={1}", lossReport.ReportNo, account); ajaxJson.AddDataItem("uri", url); ajaxJson.msg = "申诉成功,系统将在2个工作日内处理,申诉结果将会以邮件的形式通知您!请注意查收邮件"; } catch (Exception ex) { ajaxJson.msg = ex.ToString(); } return(ajaxJson.SerializeToJson()); }
/// <summary> /// 移动购买奖品 /// </summary> /// <param name="context"></param> public void MobileBuyAward(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); int userID = GameRequest.GetFormInt("userID", 0); //用户标识 string signature = GameRequest.GetFormString("signature"); //签名 string time = GameRequest.GetFormString("time"); //过期时间 //验证签名 Message message = FacadeManage.aideAccountsFacade.CheckUserSignature(userID, time, signature); if (!message.Success) { ajaxJson.msg = message.Content; context.Response.Write(ajaxJson.SerializeToJson()); return; } //获取参数 int awardID = GameRequest.GetFormInt("awardID", 0); //商品ID int counts = GameRequest.GetFormInt("counts", 0); //购买数量 string compellation = TextFilter.FilterScript(GameRequest.GetFormString("name")); //真实姓名 string mobilePhone = TextFilter.FilterScript(GameRequest.GetFormString("phone")); //移动电话 int province = GameRequest.GetFormInt("province", -1); //省份 int city = GameRequest.GetFormInt("city", -1); //城市 int area = GameRequest.GetFormInt("area", -1); //地区 string dwellingPlace = TextFilter.FilterScript(GameRequest.GetFormString("address")); //详细地址 //验证奖品 if (awardID == 0) { ajaxJson.msg = "非常抱歉,你所选购的商品不存在!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证数量 if (counts <= 0) { ajaxJson.msg = "请输入正确的兑换数量!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (counts > 99) { ajaxJson.msg = "每次兑换的数量最多为 99 件"; context.Response.Write(ajaxJson.SerializeToJson()); return; } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(awardID); //验证真实姓名 msg = CheckingRealNameFormat(compellation, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的收件人"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证手机号 msg = CheckingMobilePhoneNumFormat(mobilePhone, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的手机号码"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证地址 if (province == -1) { ajaxJson.msg = "请选择省份"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (city == -1) { ajaxJson.msg = "请选择城市"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (area == -1) { ajaxJson.msg = "请选择地区"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (string.IsNullOrEmpty(dwellingPlace)) { ajaxJson.msg = "请输入详细地址"; context.Response.Write(ajaxJson.SerializeToJson()); return; } // 防止数据溢出,商品单价不能超过2000万 if (awardInfo.Price > 20000000) { ajaxJson.msg = "很抱歉,该商品暂停兑换!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证用户 UserInfo userInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(userID, 0, "").EntityList[0] as UserInfo; //验证余额 int totalAmount = awardInfo.Price * counts; //总金额 if (totalAmount > userInfo.UserMedal) { ajaxJson.msg = "很抱歉!您的元宝数不足,不能兑换该奖品"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证库存 if (awardInfo.Inventory <= counts) { ajaxJson.msg = "很抱歉!奖品的库存数不足,请更新其他奖品或者等待补充库存"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //扣除奖牌 userInfo.UserMedal = userInfo.UserMedal - totalAmount; //更新奖牌 AwardOrder awardOrder = new AwardOrder(); awardOrder.UserID = userInfo.UserID; awardOrder.AwardID = awardID; awardOrder.AwardPrice = awardInfo.Price; awardOrder.AwardCount = counts; awardOrder.TotalAmount = totalAmount; awardOrder.Compellation = compellation; awardOrder.MobilePhone = mobilePhone; awardOrder.QQ = ""; awardOrder.Province = province; awardOrder.City = city; awardOrder.Area = area; awardOrder.DwellingPlace = dwellingPlace; awardOrder.PostalCode = ""; awardOrder.BuyIP = Utility.UserIP; msg = FacadeManage.aideNativeWebFacade.BuyAward(awardOrder); if (msg.Success) { ajaxJson.SetValidDataValue(true); ajaxJson.msg = "恭喜您!兑换成功"; awardOrder = msg.EntityList[0] as AwardOrder; context.Response.Write(ajaxJson.SerializeToJson()); } else { ajaxJson.msg = msg.Content; context.Response.Write(ajaxJson.SerializeToJson()); } }
/// <summary> /// 通过申诉重置密码 /// </summary> /// <param name="context"></param> public void ResetPwdByReport(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); int userId = 0; string validateCode = GameRequest.GetFormString("txtCode"); //验证码验证 if (!validateCode.Equals(Fetch.GetVerifyCode(), StringComparison.InvariantCultureIgnoreCase)) { ajaxJson.msg = "验证码不正确"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //链接验证 string number = Utils.GameRequest.GetFormString("number"); string sign = Utils.GameRequest.GetFormString("sign"); LossReport lossReport = FacadeManage.aideNativeWebFacade.GetLossReport(number); if (lossReport == null) { ajaxJson.msg = "重置失败,非法操作"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (lossReport.ProcessStatus == 3) { ajaxJson.msg = "重置失败,该申诉号已被处理,不能重复操作"; context.Response.Write(ajaxJson.SerializeToJson()); return; } string key = AppConfig.ReportForgetPasswordKey; string confirmSign = Utility.MD5(number + lossReport.UserID + lossReport.ReportDate.ToString() + lossReport.Random + key); if (sign != confirmSign) { ajaxJson.msg = "重置失败,签名错误"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (DateTime.Now > lossReport.OverDate) { ajaxJson.msg = "重置失败,该申诉链接已经过期,链接有效期为24个小时"; context.Response.Write(ajaxJson.SerializeToJson()); return; } userId = lossReport.UserID; string password = GameRequest.GetFormString("txtPassword"); string confirmPassword = GameRequest.GetFormString("txtConfirmPassword"); //验证密码 if (password != confirmPassword) { ajaxJson.msg = "两次输入的密码不一直"; context.Response.Write(ajaxJson.SerializeToJson()); return; } msg = InputDataValidate.CheckingPasswordFormat(password); if (!msg.Success) { ajaxJson.msg = msg.Content; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证帐号 UserInfo userInfo = FacadeManage.aideAccountsFacade.GetUserBaseInfoByUserID(userId); if (!msg.Success) { ajaxJson.msg = msg.Content; context.Response.Write(ajaxJson.SerializeToJson()); return; } //重置密码 string oldPass = userInfo.LogonPass; userInfo.LogonPass = Utility.MD5(password); msg = FacadeManage.aideAccountsFacade.ResetLoginPasswdByLossReport(userInfo, number); ajaxJson.msg = msg.Content; ajaxJson.SetValidDataValue(msg.Success); context.Response.Write(ajaxJson.SerializeToJson()); }
public void ProcessRequest(HttpContext context) { //允许跨站请求域名 context.Response.AddHeader("Access-Control-Allow-Origin", "*"); context.Response.ContentType = "application/json"; string url = GameRequest.GetQueryString("url"); string time = GameRequest.GetQueryString("time"); string sign = GameRequest.GetQueryString("sign"); //数据验证 AjaxJsonValid ajv = new AjaxJsonValid(); if (string.IsNullOrEmpty(url)) { ajv.code = (int)ApiCode.VertyParamErrorCode; ajv.msg = "参数请求错误"; context.Response.Write(ajv.SerializeToJson()); return; } //ajv = Fetch.VerifySignData(url + AppConfig.MoblieInterfaceKey + time, sign); //if(ajv.code == (int)ApiCode.VertySignErrorCode) //{ // context.Response.Write(ajv.SerializeToJson()); // return; //} //资源下载 string base64 = string.Empty; GC.Collect(); WebRequest request = null; WebResponse response = null; //请求url以获取数据 try { //设置最大连接数 ServicePointManager.DefaultConnectionLimit = 200; //设置https验证方式 if (url.StartsWith("https", StringComparison.OrdinalIgnoreCase)) { ServicePointManager.ServerCertificateValidationCallback = CheckValidationResult; } request = WebRequest.Create(context.Server.UrlDecode(url)); request.Method = "GET"; //获取服务器返回 response = request.GetResponse(); using (Stream stream = response.GetResponseStream()) { Image image = Image.FromStream(stream); Bitmap bitmap = new Bitmap(image); using (MemoryStream ms = new MemoryStream()) { bitmap.Save(ms, ImageFormat.Png); byte[] arr = new byte[ms.Length]; ms.Position = 0; ms.Read(arr, 0, (int)ms.Length); ms.Close(); base64 = Convert.ToBase64String(arr); } } ajv.SetValidDataValue(true); ajv.SetDataItem("Image", base64); context.Response.Write(ajv.SerializeToJson()); } catch (Exception) { ajv.msg = "操作异常"; ajv.SetValidDataValue(false); ajv.SetDataItem("Image", ""); context.Response.Write(ajv.SerializeToJson()); } finally { //关闭连接和流 response?.Close(); request?.Abort(); } }
/// <summary> /// 代理手机号+安全密码认证 换取 Token /// </summary> /// <param name="mobile"></param> /// <param name="pass"></param> private static void AgentAuth(string mobile, string pass) { if (string.IsNullOrEmpty(mobile) || string.IsNullOrEmpty(pass)) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " mobile、pass 缺失"); return; } Message msg = FacadeManage.aideAgentFacade.AgentMobileLogin(mobile, pass, GameRequest.GetUserIP()); if (msg.Success) { Entity.Agent.AgentInfo info = msg.EntityList[0] as Entity.Agent.AgentInfo; if (info != null) { string token = Fetch.SHA256Encrypt( $"<{info.UserID}>,<{info.AgentID}>,<{info.AgentDomain}>,<{Fetch.ConvertDateTimeToUnix(DateTime.Now)}>"); FacadeManage.aideNativeWebFacade.SaveAgentToken(info, token); _ajv.SetValidDataValue(true); _ajv.SetDataItem("token", token); _ajv.SetDataItem("expirtAt", DateTime.Now.AddDays(1)); return; } } _ajv.code = (int)ApiCode.Unauthorized; _ajv.msg = EnumHelper.GetDesc(ApiCode.Unauthorized); }
public string AccountReport() { Message message = new Message(); AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); int num = 0; string formString = GameRequest.GetFormString("reportEmail"); string formString2 = GameRequest.GetFormString("txtUser"); string formString3 = GameRequest.GetFormString("regDate"); string formString4 = GameRequest.GetFormString("realName"); string formString5 = GameRequest.GetFormString("idCard"); string formString6 = GameRequest.GetFormString("mobile"); string formString7 = GameRequest.GetFormString("nicknameOne"); string formString8 = GameRequest.GetFormString("nicknameTwo"); string formString9 = GameRequest.GetFormString("nicknameThree"); string formString10 = GameRequest.GetFormString("passwordOne"); string formString11 = GameRequest.GetFormString("passwordTwo"); string formString12 = GameRequest.GetFormString("passwordThree"); string formString13 = GameRequest.GetFormString("questionOne"); string formString14 = GameRequest.GetFormString("answerOne"); string formString15 = GameRequest.GetFormString("questionTwo"); string formString16 = GameRequest.GetFormString("answerTwo"); string formString17 = GameRequest.GetFormString("questionThree"); string formString18 = GameRequest.GetFormString("answerThree"); string formString19 = GameRequest.GetFormString("suppInfo"); message = InputDataValidate.CheckingEmail(formString); string result; if (!message.Success) { ajaxJsonValid.msg = "申诉结果接受邮箱输入有误"; result = ajaxJsonValid.SerializeToJson(); } else { message = InputDataValidate.CheckingUserNameFormat(formString2); if (!message.Success) { ajaxJsonValid.msg = "申诉帐号输入有误"; result = ajaxJsonValid.SerializeToJson(); } else { if (!string.IsNullOrEmpty(formString3)) { if (!Validate.IsShortDate(formString3)) { ajaxJsonValid.msg = "注册日期输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString4)) { message = InputDataValidate.CheckingRealNameFormat(formString4, true); if (!message.Success) { ajaxJsonValid.msg = "真实姓名输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString5)) { message = InputDataValidate.CheckingIDCardFormat(formString5, true); if (!message.Success) { ajaxJsonValid.msg = "身份证号输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString6)) { message = InputDataValidate.CheckingMobilePhoneNumFormat(formString6, true); if (!message.Success) { ajaxJsonValid.msg = "移动电话输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString7)) { message = InputDataValidate.CheckingNickNameFormat(formString7); if (!message.Success) { ajaxJsonValid.msg = "历史昵称1输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString8)) { message = InputDataValidate.CheckingNickNameFormat(formString8); if (!message.Success) { ajaxJsonValid.msg = "历史昵称2输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } if (formString8 == formString7) { ajaxJsonValid.msg = "历史昵称不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString9)) { message = InputDataValidate.CheckingNickNameFormat(formString9); if (!message.Success) { ajaxJsonValid.msg = "历史昵称3输入有误"; result = ajaxJsonValid.SerializeToJson(); return(result); } if (formString9 == formString7 || formString9 == formString8) { ajaxJsonValid.msg = "历史昵称不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString10)) { num++; } if (!string.IsNullOrEmpty(formString11)) { if (formString11 == formString10) { ajaxJsonValid.msg = "历史密码不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (!string.IsNullOrEmpty(formString12)) { if (formString12 == formString11 || formString12 == formString10) { ajaxJsonValid.msg = "历史密码不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (formString13 != "0") { message = InputDataValidate.CheckingProtectAnswer(formString14, 1, false); if (!message.Success) { ajaxJsonValid.msg = message.Content; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (formString15 != "0") { if (formString13 == formString15) { ajaxJsonValid.msg = "密保问题不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } message = InputDataValidate.CheckingProtectAnswer(formString14, 2, false); if (!message.Success) { ajaxJsonValid.msg = message.Content; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } if (formString17 != "0") { if (formString17 == formString13 || formString17 == formString15) { ajaxJsonValid.msg = "密保问题不能相同"; result = ajaxJsonValid.SerializeToJson(); return(result); } message = InputDataValidate.CheckingProtectAnswer(formString14, 3, false); if (!message.Success) { ajaxJsonValid.msg = message.Content; result = ajaxJsonValid.SerializeToJson(); return(result); } num++; } message = InputDataValidate.CheckingProtectAnswer(formString19, true); if (!message.Success) { ajaxJsonValid.msg = "补全资料太长,最长不能超过200个字符"; result = ajaxJsonValid.SerializeToJson(); } else { if (num < 4) { ajaxJsonValid.msg = "为了保证您的申诉请求审核通过,请输入至少4项资料,不包括补充资料"; result = ajaxJsonValid.SerializeToJson(); } else { Message userGlobalInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(0, 0, formString2); if (!userGlobalInfo.Success) { ajaxJsonValid.msg = "您所申诉的帐号不存在"; result = ajaxJsonValid.SerializeToJson(); } else { UserInfo userInfo = userGlobalInfo.EntityList[0] as UserInfo; if (userInfo == null) { ajaxJsonValid.msg = "您所申诉的帐号不存在"; result = ajaxJsonValid.SerializeToJson(); } else { LossReport lossReport = new LossReport(); lossReport.ReportNo = Fetch.GetForgetPwdNumber(); lossReport.ReportEmail = formString; lossReport.Accounts = formString2; lossReport.RegisterDate = formString3; lossReport.Compellation = formString4; lossReport.PassportID = formString5; lossReport.MobilePhone = formString6; lossReport.OldNickName1 = formString7; lossReport.OldNickName2 = formString8; lossReport.OldNickName3 = formString9; if (!string.IsNullOrEmpty(formString10)) { lossReport.OldLogonPass1 = Utility.MD5(formString10); } if (!string.IsNullOrEmpty(formString11)) { lossReport.OldLogonPass2 = Utility.MD5(formString11); } if (!string.IsNullOrEmpty(formString12)) { lossReport.OldLogonPass3 = Utility.MD5(formString12); } lossReport.ReportIP = GameRequest.GetUserIP(); lossReport.Random = TextUtility.CreateRandom(4, 1, 0, 0, 0, ""); lossReport.GameID = userInfo.GameID; lossReport.UserID = userInfo.UserID; lossReport.OldQuestion1 = formString13; lossReport.OldResponse1 = formString14; lossReport.OldQuestion2 = formString15; lossReport.OldResponse2 = formString16; lossReport.OldQuestion3 = formString17; lossReport.OldResponse3 = formString18; lossReport.SuppInfo = formString19; try { FacadeManage.aideNativeWebFacade.SaveLossReport(lossReport); ajaxJsonValid.SetValidDataValue(true); string value = string.Format("Complaint-Setp-2.aspx?number={0}&account={1}", lossReport.ReportNo, formString2); ajaxJsonValid.AddDataItem("uri", value); ajaxJsonValid.msg = "申诉成功,系统将在2个工作日内处理,申诉结果将会以邮件的形式通知您!请注意查收邮件"; } catch (System.Exception ex) { ajaxJsonValid.msg = ex.ToString(); } result = ajaxJsonValid.SerializeToJson(); } } } } } } return(result); }
public void BuyAward(System.Web.HttpContext context) { Message message = new Message(); AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); if (!Fetch.IsUserOnline()) { ajaxJsonValid.code = 1; ajaxJsonValid.msg = "请先登录"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { int queryInt = GameRequest.GetQueryInt("TypeID", 0); int formInt = GameRequest.GetFormInt("awardID", 0); int formInt2 = GameRequest.GetFormInt("counts", 0); string text = TextFilter.FilterScript(GameRequest.GetFormString("name")); string text2 = TextFilter.FilterScript(GameRequest.GetFormString("phone")); int formInt3 = GameRequest.GetFormInt("province", -1); int formInt4 = GameRequest.GetFormInt("city", -1); int formInt5 = GameRequest.GetFormInt("area", -1); string text3 = TextFilter.FilterScript(GameRequest.GetFormString("address")); if (formInt == 0) { ajaxJsonValid.msg = "非常抱歉,你所选购的商品不存在!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt2 <= 0) { ajaxJsonValid.msg = "请输入正确的兑换数量!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (formInt2 > 100) { ajaxJsonValid.msg = "兑换数量不能超过100!"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(formInt); int needInfo = awardInfo.NeedInfo; int num = 1; int num2 = 2; int num3 = 8; if ((needInfo & num) == num) { message = Shop.CheckingRealNameFormat(text, false); if (!message.Success) { ajaxJsonValid.msg = "请输入正确的收件人"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } } if ((needInfo & num2) == num2) { message = Shop.CheckingMobilePhoneNumFormat(text2, false); if (!message.Success) { ajaxJsonValid.msg = "请输入正确的手机号码"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } } if ((needInfo & num3) == num3) { if (formInt3 == -1) { ajaxJsonValid.msg = "请选择省份"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } if (formInt4 == -1) { ajaxJsonValid.msg = "请选择城市"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } if (formInt5 == -1) { ajaxJsonValid.msg = "请选择地区"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } if (string.IsNullOrEmpty(text3)) { ajaxJsonValid.msg = "请输入详细地址"; context.Response.Write(ajaxJsonValid.SerializeToJson()); return; } } UserInfo userInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(Fetch.GetUserCookie().UserID, 0, "").EntityList[0] as UserInfo; int num4 = awardInfo.Price * formInt2; if (num4 > userInfo.UserMedal) { ajaxJsonValid.msg = "很抱歉!您的元宝数不足,不能兑换该奖品"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (awardInfo.Inventory <= 0) { ajaxJsonValid.msg = "很抱歉!奖品的库存数不足,请更新其他奖品或者等待补充库存"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { userInfo.UserMedal -= num4; AwardOrder awardOrder = new AwardOrder(); awardOrder.UserID = userInfo.UserID; awardOrder.AwardID = formInt; awardOrder.AwardPrice = awardInfo.Price; awardOrder.AwardCount = formInt2; awardOrder.TotalAmount = num4; awardOrder.Compellation = text; awardOrder.MobilePhone = text2; awardOrder.QQ = ""; awardOrder.Province = formInt3; awardOrder.City = formInt4; awardOrder.Area = formInt5; awardOrder.DwellingPlace = text3; awardOrder.PostalCode = ""; awardOrder.BuyIP = Utility.UserIP; message = FacadeManage.aideNativeWebFacade.BuyAward(awardOrder); if (message.Success) { ajaxJsonValid.SetValidDataValue(true); ajaxJsonValid.msg = "恭喜您!兑换成功"; awardOrder = (message.EntityList[0] as AwardOrder); if (queryInt == 0) { ajaxJsonValid.AddDataItem("uri", "/Shop/Order.aspx?param=" + awardOrder.AwardID); } else { ajaxJsonValid.AddDataItem("uri", "/Mobile/Shop/Order.aspx?param=" + awardOrder.AwardID); } context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { ajaxJsonValid.msg = message.Content; context.Response.Write(ajaxJsonValid.SerializeToJson()); } } } } } } } }
/// <summary> /// 更新等级配置 /// </summary> private void UpdateLevelConfig(HttpContext context) { //验证权限 int moduleID = 408; AdminPermission adminPer = new AdminPermission(userExt, moduleID); if (!adminPer.GetPermission((long)Permission.Delete)) { ajv.msg = "非法操作,无操作权限"; context.Response.Write(ajv.SerializeToJson()); return; } int levelID = GameRequest.GetFormInt("id", 0); string experience = GameRequest.GetFormString("experience"); string gold = GameRequest.GetFormString("gold"); string medal = GameRequest.GetFormString("medal"); string remark = GameRequest.GetFormString("remark"); //验证ID if (levelID == 0) { ajv.msg = "非法操作,无效的等级标识"; context.Response.Write(ajv.SerializeToJson()); return; } //验证经验值 if (!Utils.Validate.IsNumeric(experience)) { ajv.msg = "请输入正确的经验值"; context.Response.Write(ajv.SerializeToJson()); return; } //验证金币 if (!Utils.Validate.IsNumeric(gold)) { ajv.msg = "请输入正确的金币"; context.Response.Write(ajv.SerializeToJson()); return; } //验证元宝 if (!Utils.Validate.IsNumeric(medal)) { ajv.msg = "请输入正确的元宝"; context.Response.Write(ajv.SerializeToJson()); return; } //验证备注 if (remark.Length > 64) { ajv.msg = "备注的最大长度不能超过64"; context.Response.Write(ajv.SerializeToJson()); return; } GrowLevelConfig glc = new GrowLevelConfig(); glc.LevelID = levelID; glc.Experience = Convert.ToInt32(experience); glc.RewardGold = Convert.ToInt32(gold); glc.RewardMedal = Convert.ToInt32(medal); glc.LevelRemark = remark; int result = FacadeManage.aidePlatformFacade.UpdateGrowLevelConfig(glc); if (result > 0) { ajv.msg = "修改成功"; ajv.SetValidDataValue(true); } else { ajv.msg = "修改失败"; } context.Response.Write(ajv.SerializeToJson()); }
/// <summary> /// 上传分享图片 /// </summary> /// <param name="context"></param> public void UploadShareImage(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajv = new AjaxJsonValid(); int userID = GameRequest.GetFormInt("userID", 0); // 用户标识 int suserID = GameRequest.GetFormInt("suserID", 0); // 被分享用户标识 string signature = GameRequest.GetFormString("signature"); // 签名数据 string time = GameRequest.GetFormString("time"); // 过期时间 string clientIP = GameRequest.GetFormString("clientIP"); // 客户端IP string machineID = GameRequest.GetFormString("machineID"); // 机器码ID // 验证签名 Message message = FacadeManage.aideAccountsFacade.CheckUserSignature(userID, time, signature); if (!message.Success) { ajv.msg = message.Content; context.Response.Write(ajv.SerializeToJson()); return; } // 验证数据 if (string.IsNullOrEmpty(clientIP)) { ajv.msg = "请传入IP地址!"; context.Response.Write(ajv.SerializeToJson()); return; } if (string.IsNullOrEmpty(machineID)) { ajv.msg = "请传入机器码ID!"; context.Response.Write(ajv.SerializeToJson()); return; } // 最大上传 1M int maxSize = 1048576; // 验证文件格式 if (context.Request.Files.Count == 0) { ajv.msg = "请选择上传图片!"; context.Response.Write(ajv.SerializeToJson()); return; } HttpPostedFile file = context.Request.Files[0]; if (file.InputStream == null || file.InputStream.Length == 0) { ajv.msg = "请上传有效的图片!"; context.Response.Write(ajv.SerializeToJson()); return; } // 验证头像大小 if (file.InputStream.Length > maxSize) { msg.Content = string.Format("图片不能超过 {0} M!", 1); context.Response.Write(ajv.SerializeToJson()); return; } string fileExt = Path.GetExtension(file.FileName).ToLower(); if (!(fileExt == ".png" || fileExt == ".gif" || fileExt == ".jpg" || fileExt == ".jpeg")) { ajv.msg = "上传的图片格式错误!"; context.Response.Write(ajv.SerializeToJson()); return; } Random r = new Random(); string uploadFileName = DateTime.Now.ToString("yyyyMMddhhmmss") + "_" + userID.ToString() + "_" + suserID.ToString() + "_" + r.Next(0, 100) + fileExt; //保存图片 try { string directoryPath = context.Server.MapPath("~/Upload/Share/"); if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); } file.SaveAs(directoryPath + uploadFileName); ajv.msg = "上传成功!"; ajv.AddDataItem("ShareUrl", "http://" + context.Request.Url.Authority + "/Upload/Share/" + uploadFileName); ajv.SetValidDataValue(true); context.Response.Write(ajv.SerializeToJson()); } catch (Exception) { ajv.msg = "上传异常!"; context.Response.Write(ajv.SerializeToJson()); } }
/// <summary> /// 查询申诉状态 /// </summary> /// <param name="context"></param> public void ReportState(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); string account = GameRequest.GetFormString("account"); //申诉帐号 string reportNo = GameRequest.GetFormString("reportNo"); //申诉编号 string verifyCode = GameRequest.GetFormString("code"); //验证码 //验证验证码 if (!verifyCode.Equals(Fetch.GetVerifyCode(), StringComparison.InvariantCultureIgnoreCase)) { ajaxJson.msg = "验证码输入有误"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证申诉帐号 msg = InputDataValidate.CheckingUserNameFormat(account); if (!msg.Success) { ajaxJson.msg = "申诉帐号输入有误"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证申诉流失号 msg = InputDataValidate.CheckingReportNo(reportNo, false); if (!msg.Success) { ajaxJson.msg = msg.Content; context.Response.Write(ajaxJson.SerializeToJson()); return; } //查询申诉号 LossReport lossReport = FacadeManage.aideNativeWebFacade.GetLossReport(reportNo, account); if (lossReport == null) { ajaxJson.msg = "帐号的申诉号不存在"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //返回数据 string state = string.Empty; switch (lossReport.ProcessStatus) { case 0: state = "客服处理中"; break; case 1: state = "审核成功,注意查看邮件并重置密码"; break; case 2: state = "审核失败,您的资料填写不正确或者不够详细,请重新申诉"; break; case 3: state = "更新密码成功"; break; } ajaxJson.AddDataItem("acount", account); ajaxJson.AddDataItem("reportNo", reportNo); ajaxJson.AddDataItem("state", state); ajaxJson.SetValidDataValue(true); context.Response.Write(ajaxJson.SerializeToJson()); }
/// <summary> /// 获取手机端登录数据 /// </summary> private static void GetMobileLoginData() { ConfigInfo webConfig = Fetch.GetWebSiteConfig(); string imageServerHost = webConfig.Field2; //获取登录数据 DataSet ds = FacadeManage.aideNativeWebFacade.GetMobileLoginInfo(); //获取系统配置信息 MobileSystemConfig config = GetMobileSystemConfig(ds.Tables[0]); //大喇叭道具信息由道具表提供 GameProperty prop = FacadeManage.aidePlatformFacade.GetGameProperty(306); config.DiamondBuyPropCount = prop.ExchangeRatio; config.GoldBuyPropCount = 0; //获取客服界面配置 MobileCustomerService mcs = DataHelper.ConvertRowToObject <MobileCustomerService>(ds.Tables[1].Rows[0]); //获取系统公告配置 IList <NoticeMobile> noticelist = DataHelper.ConvertDataTableToObjects <NoticeMobile>(ds.Tables[2]); //获取手机广告图 IList <AdsMobile> plate = DataHelper.ConvertDataTableToObjects <AdsMobile>(ds.Tables[3]); IList <AdsMobile> alert = DataHelper.ConvertDataTableToObjects <AdsMobile>(ds.Tables[4]); foreach (AdsMobile ads in plate) { ads.ResourceURL = ads.ResourceURL.IndexOf("http://", StringComparison.Ordinal) < 0 ? imageServerHost + ads.ResourceURL : ads.ResourceURL; } foreach (AdsMobile ads in alert) { ads.ResourceURL = ads.ResourceURL.IndexOf("http://", StringComparison.Ordinal) < 0 ? imageServerHost + ads.ResourceURL : ads.ResourceURL; } //输出数据 _ajv.SetValidDataValue(true); _ajv.SetDataItem("systemConfig", config); _ajv.SetDataItem("customerService", mcs); _ajv.SetDataItem("systemNotice", noticelist); _ajv.SetDataItem("adsList", plate); _ajv.SetDataItem("adsAlertList", alert); }
/// <summary> /// 上传自定义头像 /// </summary> /// <param name="context"></param> public void UploadFace(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajv = new AjaxJsonValid(); int userID = GameRequest.GetFormInt("userID", 0); // 用户标识 string signature = GameRequest.GetFormString("signature"); // 签名数据 string time = GameRequest.GetFormString("time"); // 过期时间 string clientIP = GameRequest.GetFormString("clientIP"); // 客户端IP string machineID = GameRequest.GetFormString("machineID"); // 机器码ID // 验证签名 //Message message = FacadeManage.aideAccountsFacade.CheckUserSignature(userID, time, signature); //if (!message.Success) //{ // ajv.msg = message.Content; // context.Response.Write(ajv.SerializeToJson()); // return; //} //// 验证数据 //if (string.IsNullOrEmpty(clientIP)) //{ // ajv.msg = "请传入IP地址!"; // context.Response.Write(ajv.SerializeToJson()); // return; //} //if (string.IsNullOrEmpty(machineID)) //{ // ajv.msg = "请传入机器码ID!"; // context.Response.Write(ajv.SerializeToJson()); // return; //} // 最大上传 1M int maxSize = 1048576; // 验证文件格式 if (context.Request.Files.Count == 0) { ajv.msg = "请选择一个头像!"; context.Response.Write(ajv.SerializeToJson()); return; } HttpPostedFile file = context.Request.Files[0]; if (file.InputStream == null || file.InputStream.Length == 0) { ajv.msg = "请上传有效的头像!"; context.Response.Write(ajv.SerializeToJson()); return; } // 验证头像大小 if (file.InputStream.Length > maxSize) { msg.Content = string.Format("头像不能超过 {0} M!", 1); context.Response.Write(ajv.SerializeToJson()); return; } // 尝试转化为图片 System.Drawing.Image image = null; try { image = System.Drawing.Image.FromStream(file.InputStream); } catch { image.Dispose(); msg.Content = string.Format("非法文件,目前只支持图片格式文件,对您使用不便感到非常抱歉。"); context.Response.Write(ajv.SerializeToJson()); return; } //缩放图片 Bitmap bitmap = new Bitmap(48, 48); Graphics g = Graphics.FromImage(bitmap); g.DrawImage(image, 0, 0, 48, 48); //获取像素 int x, y, site = 0; byte[] b = new byte[48 * 48 * 4]; for (y = 0; y < 48; y++) { for (x = 0; x < 48; x++) { Color pixelColor = bitmap.GetPixel(x, y); b[site] = pixelColor.B; b[site + 1] = pixelColor.G; b[site + 2] = pixelColor.R; b[site + 3] = 0; site = site + 4; } } //保存图片 AccountsFace accountsFace = new AccountsFace(); accountsFace.UserID = userID; accountsFace.CustomFace = b; accountsFace.InsertAddr = GameRequest.GetUserIP(); accountsFace.InsertTime = DateTime.Now; msg = FacadeManage.aideAccountsFacade.InsertCustomFace(accountsFace); if (msg.Success) { AccountsInfo model = msg.EntityList[0] as AccountsInfo; ajv.AddDataItem("CustomID", model.CustomID); } ajv.msg = "上传成功!"; ajv.SetValidDataValue(true); context.Response.Write(ajv.SerializeToJson()); //释放资源 image.Dispose(); bitmap.Dispose(); g.Dispose(); }
/// <summary> /// 统一处理入口(主要验证) /// </summary> /// <param name="context"></param> public void ProcessRequest(HttpContext context) { try { //允许跨站请求域名 context.Response.AddHeader("Access-Control-Allow-Origin", AppConfig.MoblieInterfaceDomain); //接口返回数据格式 context.Response.ContentType = "application/json"; //接口请求类型 string action = GameRequest.GetQueryString("action").ToLower(); //获取参数 _userid = GameRequest.GetQueryInt("userid", 0); _device = GameRequest.GetString("device"); _ajv = new AjaxJsonValid(); #if !DEBUG //DEBUG情况下不验证 string time = GameRequest.GetQueryString("time"); string sign = GameRequest.GetQueryString("sign"); //签名验证 _ajv = Fetch.VerifySignData((context.Request.QueryString["userid"] == null ? "" : _userid.ToString()) + AppConfig.MoblieInterfaceKey + time, sign); // Log4Net.WriteInfoLog("signStr:"+(context.Request.QueryString["userid"] == null ? "" : _userid.ToString()) + AppConfig.MoblieInterfaceKey + time + " sign:"+sign); if (_ajv.code == (int)ApiCode.VertySignErrorCode) { context.Response.Write(_ajv.SerializeToJson()); return; } #endif //参数验证 if (context.Request.QueryString["userid"] != null && _userid <= 0) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " userid 错误"); context.Response.Write(_ajv.SerializeToJson()); return; } //获取其他参数 int configid = GameRequest.GetQueryInt("configid", 0); int typeid = GameRequest.GetQueryInt("typeid", 0); switch (action) { case "webversion": _ajv.SetDataItem("apiVersion", 20171220); _ajv.SetDataItem("webVersion", "V1.1.8"); _ajv.SetDataItem("updateAt", "2018/02/03"); _ajv.SetValidDataValue(true); break; //获取手机端登录数据 case "getmobilelogindata": _ajv.SetDataItem("apiVersion", 20171017); GetMobileLoginData(); break; //获取手机端登录后数据 case "getmobileloginlater": _ajv.SetDataItem("apiVersion", 20171213); GetMobileLoginLater(); break; //获取充值产品列表 case "getpayproduct": _ajv.SetDataItem("apiVersion", 20171028); //获取参数 int typeId = GameRequest.GetQueryInt("typeid", 0); GetPayProduct(typeId); break; //领取推广有效好友奖励 case "receivespreadaward": //参数验证 if (configid <= 0) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " configid 错误"); context.Response.Write(_ajv.SerializeToJson()); return; } ReceiveSpreadAward(configid); break; case "getgameintrolist": _ajv.SetDataItem("apiVersion", 20171107); GetGameIntroList(); break; //钻石充值下单 case "createpayorder": _ajv.SetDataItem("apiVersion", 20171123); //获取参数 string paytype = GameRequest.GetQueryString("paytype"); string openid = GameRequest.GetQueryString("openid"); string subtype = GameRequest.GetQueryString("subtype"); //参数验证 if (configid <= 0 || paytype.Equals("")) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), ""); context.Response.Write(_ajv.SerializeToJson()); return; } context.Response.Write(CreatePayOrder(configid, paytype, openid, subtype).SerializeToJson()); return; //获取排行榜数据 case "getrankingdata": _ajv.SetDataItem("apiVersion", 20171129); //参数验证 if (typeid <= 0 || typeid > 7) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " typeid 错误"); context.Response.Write(_ajv.SerializeToJson()); return; } GetRankingData(typeid); break; //获取财富信息 case "getuserwealth": GetUserWealth(); break; //获取玩家信息 case "getuserinfo": _ajv.SetDataItem("apiVersion", 20171208); GetUserInfo(); break; //领取排行奖励 case "receiverankingaward": _ajv.SetDataItem("apiVersion", 20171213); //获取参数 int dateid = GameRequest.GetQueryInt("dateid", 0); //参数验证 if (dateid <= 0 || typeid <= 0) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), ""); context.Response.Write(_ajv.SerializeToJson()); return; } ReceiveRankingAward(dateid, typeid); break; //获取游戏列表 case "getgamelist": GetGameList(); break; //领取注册赠送奖励 case "receiveregistergrant": _ajv.SetDataItem("apiVersion", 20171213); ReceiveRegisterGrant(); break; //金币流水记录 case "recordtreasuretrade": RecordTreasureTrade(); break; //钻石流水记录 case "recorddiamondstrade": RecordDiamondsTrade(); break; //钻石兑换金币 case "diamondexchgold": _ajv.SetDataItem("apiVersion", 20171213); //for 响应规范 if (configid <= 0 || typeid < 0) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " configid或typeid 错误"); context.Response.Write(_ajv.SerializeToJson()); return; } DiamondExchGold(configid, typeid); break; case "getpayorderstatus": _ajv.SetDataItem("apiVersion", 20171127); string orderid = GameRequest.GetString("orderid"); if (string.IsNullOrEmpty(orderid)) { _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " orderid 错误"); context.Response.Write(_ajv.SerializeToJson()); return; } GetPayOrderStatus(orderid); break; case "getquestionandanswerlist": _ajv.SetDataItem("apiVersion", 20180125); GetQuestionAndAnswerList(); break; default: _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " action 错误"); break; } context.Response.Write(_ajv.SerializeToJson()); } catch (Exception ex) { Log4Net.WriteInfoLog("下面一条为手机接口故障信息", "MobileInterface"); Log4Net.WriteErrorLog(ex); _ajv = new AjaxJsonValid { code = 500, msg = "手机接口短暂故障,请联系管理员!" }; context.Response.Write(_ajv.SerializeToJson()); } context.Response.End(); }
/// <summary> /// 购买商品 /// </summary> /// <param name="context"></param> public void BuyAward(HttpContext context) { Message msg = new Message(); AjaxJsonValid ajaxJson = new AjaxJsonValid(); //判断登录 if (!Fetch.IsUserOnline()) { ajaxJson.code = 1; ajaxJson.msg = "请先登录"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //获取参数 int typeID = GameRequest.GetQueryInt("TypeID", 0); int awardID = GameRequest.GetFormInt("awardID", 0); //商品ID int counts = GameRequest.GetFormInt("counts", 0); //购买数量 string compellation = TextFilter.FilterScript(GameRequest.GetFormString("name")); //真实姓名 string mobilePhone = TextFilter.FilterScript(GameRequest.GetFormString("phone")); //移动电话 int province = GameRequest.GetFormInt("province", -1); //省份 int city = GameRequest.GetFormInt("city", -1); //城市 int area = GameRequest.GetFormInt("area", -1); //地区 string dwellingPlace = TextFilter.FilterScript(GameRequest.GetFormString("address")); //详细地址 //验证奖品 if (awardID == 0) { ajaxJson.msg = "非常抱歉,你所选购的商品不存在!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证数量 if (counts <= 0) { ajaxJson.msg = "请输入正确的兑换数量!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (counts > 100) { ajaxJson.msg = "兑换数量不能超过100!"; context.Response.Write(ajaxJson.SerializeToJson()); return; } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(awardID); int needInfo = awardInfo.NeedInfo; int qqValue = (int)AppConfig.AwardNeedInfoType.QQ号码; int nameValue = (int)AppConfig.AwardNeedInfoType.真实姓名; int phoneValue = (int)AppConfig.AwardNeedInfoType.手机号码; int addressValue = (int)AppConfig.AwardNeedInfoType.收货地址及邮编; //验证真实姓名 if ((needInfo & nameValue) == nameValue) { msg = CheckingRealNameFormat(compellation, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的收件人"; context.Response.Write(ajaxJson.SerializeToJson()); return; } } //验证手机号 if ((needInfo & phoneValue) == phoneValue) { msg = CheckingMobilePhoneNumFormat(mobilePhone, false); if (!msg.Success) { ajaxJson.msg = "请输入正确的手机号码"; context.Response.Write(ajaxJson.SerializeToJson()); return; } } //验证地址邮编 if ((needInfo & addressValue) == addressValue) { if (province == -1) { ajaxJson.msg = "请选择省份"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (city == -1) { ajaxJson.msg = "请选择城市"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (area == -1) { ajaxJson.msg = "请选择地区"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (string.IsNullOrEmpty(dwellingPlace)) { ajaxJson.msg = "请输入详细地址"; context.Response.Write(ajaxJson.SerializeToJson()); return; } } //验证用户 UserInfo userInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(Fetch.GetUserCookie().UserID, 0, "").EntityList[0] as UserInfo; //验证余额 int totalAmount = awardInfo.Price * counts; //总金额 if (totalAmount > userInfo.UserMedal) { ajaxJson.msg = "很抱歉!您的元宝数不足,不能兑换该奖品"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证库存 if (awardInfo.Inventory <= 0) { ajaxJson.msg = "很抱歉!奖品的库存数不足,请更新其他奖品或者等待补充库存"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //扣除奖牌 userInfo.UserMedal = userInfo.UserMedal - totalAmount; //更新奖牌 AwardOrder awardOrder = new AwardOrder(); awardOrder.UserID = userInfo.UserID; awardOrder.AwardID = awardID; awardOrder.AwardPrice = awardInfo.Price; awardOrder.AwardCount = counts; awardOrder.TotalAmount = totalAmount; awardOrder.Compellation = compellation; awardOrder.MobilePhone = mobilePhone; awardOrder.QQ = ""; awardOrder.Province = province; awardOrder.City = city; awardOrder.Area = area; awardOrder.DwellingPlace = dwellingPlace; awardOrder.PostalCode = ""; awardOrder.BuyIP = Utility.UserIP; msg = FacadeManage.aideNativeWebFacade.BuyAward(awardOrder); if (msg.Success) { ajaxJson.SetValidDataValue(true); ajaxJson.msg = "恭喜您!兑换成功"; awardOrder = msg.EntityList[0] as AwardOrder; if (typeID == 0) { ajaxJson.AddDataItem("uri", "/Shop/Order.aspx?param=" + awardOrder.AwardID); } else { ajaxJson.AddDataItem("uri", "/Mobile/Shop/Order.aspx?param=" + awardOrder.AwardID); } context.Response.Write(ajaxJson.SerializeToJson()); } else { ajaxJson.msg = msg.Content; context.Response.Write(ajaxJson.SerializeToJson()); } }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (AppConfig.Mode == AppConfig.CodeMode.Production) { #region 客户版本 Response.AddHeader("Access-Control-Allow-Origin", AppConfig.MoblieInterfaceDomain); string time = GameRequest.GetQueryString("time"); string sign = GameRequest.GetQueryString("sign"); //签名验证 AjaxJsonValid ajv = Fetch.VerifySignData((AppConfig.MoblieInterfaceKey + time), sign); if (ajv.code == (int)ApiCode.VertySignErrorCode) { Response.Write(ajv.SerializeToJson()); return; } object obj = WHCache.Default.Get <AspNetCache>(AppConfig.WxTicket); TicketCache tc = obj as TicketCache; if (tc == null) { try { string url = $"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={WxAuthorize.Appid}&secret={WxAuthorize.Appsecret}"; string result = WxHttpService.Get(url); JavaScriptSerializer js = new JavaScriptSerializer(); AccessToken at = js.Deserialize <AccessToken>(result); if (at.errcode > 0) { ajv.msg = at.errmsg; Response.Write(ajv.SerializeToJson()); return; } url = $"https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token={at.access_token}&type=jsapi"; result = WxHttpService.Get(url); JsapiTicket jt = js.Deserialize <JsapiTicket>(result); if (jt.errcode > 0) { ajv.msg = at.errmsg; Response.Write(ajv.SerializeToJson()); return; } tc = new TicketCache(); tc.access_token = at.access_token; tc.ticket = jt.ticket; int timeout = (at.expires_in / 60) - 3; WHCache.Default.Save <AspNetCache>(AppConfig.WxTicket, tc, timeout); } catch (Exception) { Response.Write(ajv.SerializeToJson()); return; } } ajv.SetValidDataValue(true); ajv.SetDataItem("access_token", tc.access_token); ajv.SetDataItem("ticket", tc.ticket); Response.Write(ajv.SerializeToJson()); #endregion } else { #region 演示版本 string time = GameRequest.GetQueryString("time"); string sign = GameRequest.GetQueryString("sign"); Response.Redirect("http://ry.foxuc.net/JJTicket.aspx?time=" + time + "&sign=" + sign); #endregion } } }
/// <summary> /// 玩家推广中心数据 /// </summary> private void UserSpreadHome() { byte spreadReturnType = 0; SystemStatusInfo spreadTypeConfig = FacadeManage.aideAccountsFacade.GetSystemStatusInfo(AppConfig.ConfigInfoKey.SpreadReturnType .ToString()); if (spreadTypeConfig != null) { spreadReturnType = Convert.ToByte(spreadTypeConfig.StatusValue); } DataSet ds = FacadeManage.aideAccountsFacade.GetUserSpreadHomeDataSet(_userId); Dictionary <string, object> info = new Dictionary <string, object> { { "GameID", Convert.ToInt32(ds.Tables[0].Rows[0]["GameID"]) }, { "Lv1Count", Convert.ToInt32(ds.Tables[0].Rows[0]["Lv1Count"]) }, { "Lv2Count", Convert.ToInt32(ds.Tables[0].Rows[0]["Lv2Count"]) }, { "Lv3Count", Convert.ToInt32(ds.Tables[0].Rows[0]["Lv3Count"]) }, { "TotalReturn", Convert.ToInt64(ds.Tables[0].Rows[0]["TotalReturn"]) }, { "TotalReceive", Convert.ToInt64(ds.Tables[0].Rows[0]["TotalReceive"]) } }; _ajv.SetDataItem("info", info); ArrayList arrayList = new ArrayList(); if (ds.Tables[1].Rows.Count > 0) { foreach (DataRow dr in ds.Tables[1].Rows) { int userId = Convert.ToInt32(dr["UserID"]); Dictionary <string, object> belowUser = new Dictionary <string, object>() { { "UserID", userId }, { "GameID", FacadeManage.aideAccountsFacade.GetGameIDByUserID(userId) }, { "NickName", FacadeManage.aideAccountsFacade.GetNickNameByUserID(userId) }, { "Level", GetLevelDesc(dr["LevelID"].ToString()) } }; arrayList.Add(belowUser); } } _ajv.SetDataItem("belowList", arrayList); arrayList = new ArrayList(); if (ds.Tables[2].Rows.Count > 0) { foreach (DataRow dr in ds.Tables[2].Rows) { Dictionary <string, object> record = new Dictionary <string, object>() { { "GameID", FacadeManage.aideAccountsFacade.GetGameIDByUserID(Convert.ToInt32(dr["SourceUserID"])) }, { "SourceDiamond", Convert.ToInt32(dr["SourceDiamond"]) }, { "SpreadLevel", GetLevelDesc(dr["SpreadLevel"].ToString()) }, { "ReturnType", spreadReturnType == 0 ? "金币" : "钻石" }, { "ReturnNum", Convert.ToInt32(dr["ReturnNum"]) }, { "CollectDate", Convert.ToDateTime(dr["CollectDate"]).ToString("yyyy-MM-dd HH:mm:ss") }, }; arrayList.Add(record); } } _ajv.SetDataItem("returnRecord", arrayList); arrayList = new ArrayList(); if (ds.Tables[3] != null && ds.Tables[3].Rows.Count > 0) { foreach (DataRow dr in ds.Tables[3].Rows) { Dictionary <string, object> record = new Dictionary <string, object>() { { "CollectDate", Convert.ToDateTime(dr["CollectDate"]).ToString("yyyy-MM-dd HH:mm:ss") }, { "ReceiveType", spreadReturnType == 0 ? "金币" : "钻石" }, { "ReceiveNum", Convert.ToInt32(dr["ReceiveNum"]) }, { "ReceiveBefore", Convert.ToInt64(dr["ReceiveBefore"]) } }; arrayList.Add(record); } } _ajv.SetDataItem("receiveRecord", arrayList); _ajv.SetValidDataValue(true); }
public void GetUnderList(HttpContext context) { AjaxJsonValid ajv = new AjaxJsonValid(); UserTicketInfo uti = Fetch.GetUserCookie(); if (uti == null || uti.UserID <= 0) { ajv.code = 0; ajv.msg = "登录已失效,请重新打开页面"; context.Response.Write(ajv.SerializeToJson()); return; } string type = GameRequest.GetQueryString("type"); string range = GameRequest.GetQueryString("range"); int number = GameRequest.GetQueryInt("pageSize", 10); int page = GameRequest.GetQueryInt("page", 1); string sqlMonth = " AND CollectDate >= '" + new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).ToString("yyyy-MM-dd HH:mm:ss") + "'"; string sqlRange = range == "month" ? sqlMonth : ""; number = range == "all" ? 10 : 50; string sqlWhere; long pCount = 0; UnderList list = new UnderList(); PagerSet ps; switch (type) { case "user": sqlWhere = $" WHERE SourceUserID = {uti.UserID} AND TargetUserID NOT IN (SELECT UserID FROM WHJHAccountsDBLink.WHJHAccountsDB.dbo.AccountsAgentInfo) {sqlRange} GROUP BY TargetUserID,SourceUserID "; ps = FacadeManage.aideRecordFacade.GetAgentBelowUserPresentDiamondRecord(sqlWhere, page, number); list.PageCount = ps.PageCount; list.RecordCount = ps.RecordCount; list.PageIndex = ps.PageIndex; list.PageSize = ps.PageSize; if (ps.RecordCount > 0) { foreach (DataRow row in ps.PageSet.Tables[0].Rows) { UnderData data = new UnderData() { UserID = Convert.ToInt32(row["UserID"]), RankID = Convert.ToInt32(row["PageView_RowNo"]) }; data.GameID = FacadeManage.aideAccountsFacade.GetGameIDByUserID(data.UserID); data.NickName = FacadeManage.aideAccountsFacade.GetNickNameByUserID(data.UserID); data.Diamond = FacadeManage.aideTreasureFacade.GetUserCurrency(data.UserID)?.Diamond ?? 0; if (type == "month") { data.MonthDiamond = Convert.ToInt64(row["SumDiamond"]); data.TotalDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID); } else { data.TotalDiamond = Convert.ToInt64(row["SumDiamond"]); data.MonthDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID, sqlMonth); } list.dataList.Add(data); } } pCount = FacadeManage.aideRecordFacade.GetAgentBelowAccountsCount(uti.UserID); break; case "agent": list.Link = true; if (range == "all") { IList <AccountsAgentInfo> belowList = FacadeManage.aideAccountsFacade.GetAgentBelowAgentList(uti.UserID); list.PageCount = 1; list.RecordCount = belowList?.Count ?? 0; list.PageIndex = 1; list.PageSize = belowList?.Count ?? 0; var iCount = 0; if (belowList != null) { foreach (AccountsAgentInfo agentInfo in belowList) { iCount++; UnderData data = new UnderData() { UserID = agentInfo.UserID, RankID = iCount }; data.GameID = FacadeManage.aideAccountsFacade.GetGameIDByUserID(data.UserID); data.NickName = FacadeManage.aideAccountsFacade.GetNickNameByUserID(data.UserID); data.Diamond = FacadeManage.aideTreasureFacade.GetUserCurrency(data.UserID)?.Diamond ?? 0; data.TotalDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID, sqlMonth); data.MonthDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID, sqlMonth); list.dataList.Add(data); } } } else { sqlWhere = $" WHERE SourceUserID IN ( SELECT UserID FROM WHJHAccountsDBLink.WHJHAccountsDB.dbo.AccountsAgentInfo WHERE ParentAgent = {uti.AgentID} ) {sqlRange} GROUP BY SourceUserID "; ps = FacadeManage.aideRecordFacade .GetAgentBelowAgentPresentDiamondRecord(sqlWhere, page, number); list.PageCount = ps.PageCount; list.RecordCount = ps.RecordCount; list.PageIndex = ps.PageIndex; list.PageSize = ps.PageSize; if (ps.RecordCount > 0) { foreach (DataRow row in ps.PageSet.Tables[0].Rows) { UnderData data = new UnderData() { UserID = Convert.ToInt32(row["UserID"]), RankID = Convert.ToInt32(row["PageView_RowNo"]) }; data.GameID = FacadeManage.aideAccountsFacade.GetGameIDByUserID(data.UserID); data.NickName = FacadeManage.aideAccountsFacade.GetNickNameByUserID(data.UserID); data.Diamond = FacadeManage.aideTreasureFacade.GetUserCurrency(data.UserID)?.Diamond ?? 0; if (type == "month") { data.MonthDiamond = Convert.ToInt64(row["SumDiamond"]); data.TotalDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID); } else { data.TotalDiamond = Convert.ToInt64(row["SumDiamond"]); data.MonthDiamond = FacadeManage.aideRecordFacade.GetTotalPresentCount(uti.UserID, data.UserID, sqlMonth); } list.dataList.Add(data); } } } pCount = FacadeManage.aideAccountsFacade.GetAgentBelowAgentCount(uti.UserID); break; default: ajv.msg = "类型参数丢失!"; context.Response.Write(ajv.SerializeToJson()); return; } ajv.SetDataItem("list", list.dataList); ajv.SetDataItem("total", list.RecordCount); if (list.Link) { ajv.SetDataItem("link", true); } ajv.SetDataItem("count", pCount); ajv.SetValidDataValue(true); context.Response.Write(ajv.SerializeToJson()); }