private void ShowIcon() { if (this.InfoList.get_Count() > 0) { Random random = new Random(); int num = random.Next(0, this.InfoList.get_Count()); AwardInfo awardInfo = this.InfoList.get_Item(num); this.InfoList.RemoveAt(num); if (awardInfo.itemFirstType == ItemFirstType.IFT.Pet) { this.ShowAsPet(awardInfo); } else { this.ShowAsNoPet(awardInfo); } } else { this.ButtonAgain.get_gameObject().SetActive(true); this.ButtonConfirm.get_gameObject().SetActive(true); this.Consume.SetActive(true); this.ButtonAgain.set_enabled(true); } }
public override void SetInfo(object data) { _scoreID = (int)data; ArenaScoreConfig cfg = ArenaScoreConfigLoader.GetConfig(_scoreID); if (cfg == null) { return; } // 积分 _txtScore.text = cfg.PointsDemand.ToString(); List <AwardInfo> awardList = AwardManager.Instance.GetAwardList(cfg.AwardId); for (int i = 0; i < _itemWidgets.Length; ++i) { if (i < awardList.Count) { AwardInfo info = awardList[i]; _itemWidgets[i].gameObject.SetActive(true); _itemWidgets[i].SetInfo(info.ItemID, info.ItemCount); } else { _itemWidgets[i].gameObject.SetActive(false); } } _btnGet.interactable = !PVPManager.Instance.HasGetScoreAward(_scoreID); _btnGet.gameObject.SetActive(PVPManager.Instance.MyScore >= cfg.PointsDemand); }
protected void Page_Load(object sender, System.EventArgs e) { if (base.IntParam == 0) { base.Response.Redirect("/Mobile/Shop404.html"); } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(base.IntParam); if (awardInfo == null) { base.Response.Redirect("/Mobile/Shop404.html"); } this.imgUrl = Fetch.GetUploadFileUrl(awardInfo.SmallImage); this.price = awardInfo.Price; this.name = awardInfo.AwardName; this.inventory = awardInfo.Inventory; Message userGlobalInfo = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(Fetch.GetUserCookie().UserID, 0, ""); UserInfo userInfo = userGlobalInfo.EntityList[0] as UserInfo; this.userMedals = userInfo.UserMedal; this.realName = userInfo.Compellation; IndividualDatum userContactInfoByUserID = FacadeManage.aideAccountsFacade.GetUserContactInfoByUserID(Fetch.GetUserCookie().UserID); this.phone = userContactInfoByUserID.MobilePhone; this.address = userContactInfoByUserID.DwellingPlace; }
protected string pageName = string.Empty; //页名称 protected void Page_Load(object sender, EventArgs e) { if (IntParam == 0) { return; } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(IntParam); if (awardInfo != null) { awardName = awardInfo.AwardName; bigImage = Fetch.GetUploadFileUrl(awardInfo.BigImage); description = Utility.HtmlDecode(awardInfo.Description); inventory = awardInfo.Inventory; price = awardInfo.Price; status = awardInfo.Nullity; //面包屑 AwardType awardType = FacadeManage.aideNativeWebFacade.GetAwardType(awardInfo.TypeID); if (awardType != null) { pageName = awardType.TypeName; if (awardType.ParentID != 0) { awardType = FacadeManage.aideNativeWebFacade.GetAwardType(awardType.ParentID); pageName = awardType.TypeName + " -> " + pageName; } } pageName += " -> " + awardInfo.AwardName; } }
protected string address = string.Empty; //详细地址 protected void Page_Load(object sender, EventArgs e) { if (IntParam == 0) { Response.Redirect("/Mobile/Shop404.html"); } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(IntParam); if (awardInfo == null) { Response.Redirect("/Mobile/Shop404.html"); } imgUrl = Fetch.GetUploadFileUrl(awardInfo.SmallImage); price = awardInfo.Price; name = awardInfo.AwardName; inventory = awardInfo.Inventory; Message umsg = FacadeManage.aideAccountsFacade.GetUserGlobalInfo(Fetch.GetUserCookie().UserID, 0, ""); UserInfo user = umsg.EntityList[0] as UserInfo; userMedals = user.UserMedal; realName = user.Compellation; IndividualDatum individualDatum = FacadeManage.aideAccountsFacade.GetUserContactInfoByUserID(Fetch.GetUserCookie().UserID); phone = individualDatum.MobilePhone; address = individualDatum.DwellingPlace; }
/// <summary> /// 更新商品信息 /// </summary> /// <param name="info">商品实体</param> public int UpdateAwardInfo(AwardInfo info) { StringBuilder sqlQuery = new StringBuilder(); sqlQuery.Append("UPDATE AwardInfo SET ") .Append("AwardName=@AwardName,") .Append("AwardImg=@AwardImg,") .Append("Inventory=@Inventory,") .Append("Nullity=@Nullity,") .Append("UnitPrice=@UnitPrice,") .Append("Gold=@Gold,") .Append("SortID=@SortID,") .Append("Diamond=@Diamond,") .Append("AwardType=@AwardType ") .Append(" WHERE AwardID= @AwardID"); var prams = new List <DbParameter>(); prams.Add(Database.MakeInParam("AwardName", info.AwardName)); prams.Add(Database.MakeInParam("AwardImg", info.AwardImg)); prams.Add(Database.MakeInParam("Inventory", info.Inventory)); prams.Add(Database.MakeInParam("Nullity", info.Nullity)); prams.Add(Database.MakeInParam("UnitPrice", info.UnitPrice)); prams.Add(Database.MakeInParam("Gold", info.Gold)); prams.Add(Database.MakeInParam("Diamond", info.Diamond)); prams.Add(Database.MakeInParam("SortID", info.SortID)); prams.Add(Database.MakeInParam("AwardType", info.AwardType)); prams.Add(Database.MakeInParam("AwardID", info.AwardID)); return(Database.ExecuteNonQuery(CommandType.Text, sqlQuery.ToString(), prams.ToArray())); }
public void Add(IAward award) { var info = new AwardInfo { award = award }; info.history.Add(award.Quality); this.AwardInfos.Add(info); }
private void ShowAsNoPet(AwardInfo ai) { Transform transform = ItemShow.ShowItem(this.tmp, ai.itemId, (long)ai.itemCount, false, null, 2001).get_transform(); FXSpineManager.Instance.ReplaySpine(0, 1107, transform, "LuckDrawResult", 3001, null, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None); TimerHeap.AddTimer((uint)this.PlayTime, 0, delegate { this.ShowIcon(); }); }
/// <summary> /// 获取商品名称 /// </summary> public string GetAwardInfoName(int id) { AwardInfo info = FacadeManage.aideNativeWebFacade.GetAwardInfoByID(id); if (info != null) { return(info.AwardName); } return(""); }
public bool UpdateAwardInfo(AwardInfo info) { int num = aideNativeWebData.UpdateAwardInfo(info); if (num <= 0) { return(false); } return(true); }
public void AddRange(IEnumerable <IAward> awards) { foreach (var award in awards) { var info = new AwardInfo { award = award }; info.history.Add(award.Quality); this.AwardInfos.Add(info); } }
/// <summary> /// 申请退货 /// </summary> /// <param name="context"></param> public void ReturnAward(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 orderID = GameRequest.GetQueryInt("orderid", 0); //订单号 if (orderID == 0) { return; } AwardOrder awardOrder = FacadeManage.aideNativeWebFacade.GetAwardOrder(orderID, Fetch.GetUserCookie().UserID); if (awardOrder == null) { ajaxJson.msg = "申请退货失败,订单不存在"; context.Response.Write(ajaxJson.SerializeToJson()); return; } if (awardOrder.OrderStatus != 1 && awardOrder.OrderStatus != 2) { ajaxJson.msg = "此订单暂不允许退货"; context.Response.Write(ajaxJson.SerializeToJson()); return; } //验证商品是否允许退货 AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(awardOrder.AwardID); if (!awardInfo.IsReturn) { ajaxJson.msg = "此商品属于不予退货服务的产品范畴"; context.Response.Write(ajaxJson.SerializeToJson()); return; } awardOrder.OrderStatus = (int)AppConfig.AwardOrderStatus.申请退货; FacadeManage.aideNativeWebFacade.UpdateAwardOrderStatus(awardOrder); ajaxJson.SetValidDataValue(true); ajaxJson.msg = "申请退货成功,请等待客服审核"; context.Response.Write(ajaxJson.SerializeToJson()); return; }
public void ReturnAward(System.Web.HttpContext context) { new Message(); AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); if (!Fetch.IsUserOnline()) { ajaxJsonValid.code = 1; ajaxJsonValid.msg = "请先登录"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { int queryInt = GameRequest.GetQueryInt("orderid", 0); if (queryInt != 0) { AwardOrder awardOrder = FacadeManage.aideNativeWebFacade.GetAwardOrder(queryInt, Fetch.GetUserCookie().UserID); if (awardOrder == null) { ajaxJsonValid.msg = "申请退货失败,订单不存在"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { if (awardOrder.OrderStatus != 1 && awardOrder.OrderStatus != 2) { ajaxJsonValid.msg = "此订单暂不允许退货"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(awardOrder.AwardID); if (!awardInfo.IsReturn) { ajaxJsonValid.msg = "此商品属于不予退货服务的产品范畴"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { awardOrder.OrderStatus = 3; FacadeManage.aideNativeWebFacade.UpdateAwardOrderStatus(awardOrder); ajaxJsonValid.SetValidDataValue(true); ajaxJsonValid.msg = "申请退货成功,请等待客服审核"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } } } } } }
private void ShowAsPet(AwardInfo ai) { Items items = DataReader <Items> .Get(ai.itemId); int level = items.level; int decompose_star = items.level; bool replace = false; string petName = string.Empty; if (ai.hadFlag) { if (decompose_star > ai.petOldStar) { replace = true; petName = PetManager.GetPetName(ai.petCfgId, decompose_star); decompose_star = ai.petOldStar; } else { replace = false; petName = PetManager.GetPetName(ai.petCfgId, ai.petOldStar); } } PetManager.Instance.JustObtainPetNty(ai.petCfgId, level, decompose_star, ai.hadFlag, replace, petName, delegate { Pet pet = DataReader <Pet> .Get(ai.petCfgId); if (!ai.hadFlag) { Transform transform = ItemShow.ShowItem(this.tmp, ai.itemId, (long)ai.itemCount, false, null, 2001).get_transform(); if (ai.petCfgId > 0) { TeShuChongWu teShuChongWu = DataReader <TeShuChongWu> .Get(ai.petCfgId); if (teShuChongWu != null) { this.FxIdList.Add(FXSpineManager.Instance.PlaySpine(teShuChongWu.effectId, transform, "LuckDrawResult", 3001, null, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None)); } } } else { Transform transform = ItemShow.ShowItem(this.tmp, pet.fragmentId, (long)PetManager.GetReturnFragment(pet, decompose_star), false, null, 2001).get_transform(); } TimerHeap.AddTimer(1000u, 0, delegate { this.ShowIcon(); }); }); }
protected void Page_Load(object sender, System.EventArgs e) { if (base.IntParam == 0) { base.Response.Redirect("/Mobile/Shop404.html"); } AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(base.IntParam); if (awardInfo == null) { base.Response.Redirect("/Mobile/Shop404.html"); } this.imgUrl = Fetch.GetUploadFileUrl(awardInfo.SmallImage); this.price = awardInfo.Price; this.name = awardInfo.AwardName; }
public void InsertAwardInfo(AwardInfo info) { System.Data.DataRow dataRow = this.aideAwardInfoProvider.NewRow(); dataRow["AwardName"] = info.AwardName; dataRow["BigImage"] = info.BigImage; dataRow["BuyCount"] = info.BuyCount; dataRow["Description"] = info.Description; dataRow["Inventory"] = info.Inventory; dataRow["CollectDate"] = info.CollectDate; dataRow["IsMember"] = info.IsMember; dataRow["IsReturn"] = info.IsReturn; dataRow["NeedInfo"] = info.NeedInfo; dataRow["Nullity"] = info.Nullity; dataRow["Price"] = info.Price; dataRow["SmallImage"] = info.SmallImage; dataRow["SortID"] = info.SortID; dataRow["TypeID"] = info.TypeID; this.aideAwardInfoProvider.Insert(dataRow); }
/// <summary> /// 保存商品信息 /// </summary> /// <param name="info">商品实体</param> public void InsertAwardInfo(AwardInfo info) { string sql = @"INSERT INTO AwardInfo(AwardName,AwardImg,AwardType,Inventory,CollectDate,Nullity,UnitPrice,Gold,Diamond,SortID) VALUES(@AwardName,@AwardImg,@AwardType,@Inventory,@CollectDate,@Nullity,@UnitPrice,@Gold,@Diamond,@SortID)"; var prams = new List <DbParameter> { Database.MakeInParam("AwardName", info.AwardName), Database.MakeInParam("AwardImg", info.AwardImg), Database.MakeInParam("AwardType", info.AwardType), Database.MakeInParam("Inventory", info.Inventory), Database.MakeInParam("CollectDate", info.CollectDate), Database.MakeInParam("Nullity", info.Nullity), Database.MakeInParam("UnitPrice", info.UnitPrice), Database.MakeInParam("Gold", info.Gold), Database.MakeInParam("Diamond", info.Diamond), Database.MakeInParam("SortID", info.SortID), }; Database.ExecuteNonQuery(CommandType.Text, sql, prams.ToArray()); }
public override void SetInfo(object data) { _highID = (int)data; ArenaHistoryRankConfig cfg = ArenaHistoryRankConfigLoader.GetConfig(_highID); if (cfg == null) { return; } if (cfg.LowerHistoryRank == cfg.UpperHistoryRank) { _txtRank.text = Str.Format("UI_PVP_RANK", cfg.LowerHistoryRank); } else { _txtRank.text = Str.Format("UI_PVP_RANK_RANGE", cfg.UpperHistoryRank, cfg.LowerHistoryRank); } List <AwardInfo> awardList = AwardManager.Instance.GetAwardList(cfg.AwardId); for (int i = 0; i < _itemWidgets.Length; ++i) { if (i < awardList.Count) { AwardInfo info = awardList[i]; _itemWidgets[i].gameObject.SetActive(true); _itemWidgets[i].SetInfo(info.ItemID, info.ItemCount); } else { _itemWidgets[i].gameObject.SetActive(false); } } _btnGet.interactable = !PVPManager.Instance.HasGetHighAward(_highID); _btnGet.gameObject.SetActive(PVPManager.Instance.MyHighRank > 0 && PVPManager.Instance.MyHighRank <= cfg.LowerHistoryRank); }
public int UpdateAwardInfo(AwardInfo info) { System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder(); stringBuilder.Append("UPDATE AwardInfo SET ").Append("AwardName=@AwardName,").Append("BigImage=@BigImage,").Append("BuyCount=@BuyCount,").Append("Description=@Description,").Append("Inventory=@Inventory,").Append("IsMember=@IsMember,").Append("IsReturn=@IsReturn,").Append("NeedInfo=@NeedInfo,").Append("Nullity=@Nullity,").Append("Price=@Price,").Append("SmallImage=@SmallImage,").Append("SortID=@SortID,").Append("TypeID=@TypeID ").Append(" WHERE AwardID= @AwardID"); System.Collections.Generic.List <System.Data.Common.DbParameter> list = new System.Collections.Generic.List <System.Data.Common.DbParameter>(); list.Add(base.Database.MakeInParam("AwardName", info.AwardName)); list.Add(base.Database.MakeInParam("BigImage", info.BigImage)); list.Add(base.Database.MakeInParam("BuyCount", info.BuyCount)); list.Add(base.Database.MakeInParam("Description", info.Description)); list.Add(base.Database.MakeInParam("Inventory", info.Inventory)); list.Add(base.Database.MakeInParam("CollectDate", info.CollectDate)); list.Add(base.Database.MakeInParam("IsMember", info.IsMember)); list.Add(base.Database.MakeInParam("IsReturn", info.IsReturn)); list.Add(base.Database.MakeInParam("NeedInfo", info.NeedInfo)); list.Add(base.Database.MakeInParam("Nullity", info.Nullity)); list.Add(base.Database.MakeInParam("Price", info.Price)); list.Add(base.Database.MakeInParam("SmallImage", info.SmallImage)); list.Add(base.Database.MakeInParam("SortID", info.SortID)); list.Add(base.Database.MakeInParam("TypeID", info.TypeID)); list.Add(base.Database.MakeInParam("AwardID", info.AwardID)); return(base.Database.ExecuteNonQuery(System.Data.CommandType.Text, stringBuilder.ToString(), list.ToArray())); }
/// <summary> /// 数据初始化 /// </summary> private void Inition() { if (IntParam > 0) { AwardInfo info = FacadeManage.aideNativeWebFacade.GetAwardInfoByID(IntParam); CtrlHelper.SetText(txtAwardName, info.AwardName); CtrlHelper.SetText(txtDescription, info.Description); CtrlHelper.SetText(txtInventory, info.Inventory.ToString()); CtrlHelper.SetText(txtPrice, info.Price.ToString()); CtrlHelper.SetText(txtSortID, info.SortID.ToString()); rbIsReturn.SelectedValue = info.IsReturn == true ? "1" : "0"; rbNullity.SelectedValue = info.Nullity.ToString(); ddlTypeID.SelectedValue = info.TypeID.ToString(); for (int i = 0; i < cbNeedInfo.Items.Count; i++) { int valu = Convert.ToInt32(cbNeedInfo.Items[i].Value); int num = info.NeedInfo & valu; if (num == valu) { cbNeedInfo.Items[i].Selected = true; } else { cbNeedInfo.Items[i].Selected = false; } } if (!string.IsNullOrEmpty(info.SmallImage)) { upSmallImage.FilePath = info.SmallImage; } if (!string.IsNullOrEmpty(info.BigImage)) { upBigImage.FilePath = info.BigImage; } } }
/// <summary> /// 绑定商品类型 /// </summary> //private void DataMallType() //{ // ///绑定商品类型 // DataSet ds = FacadeManage.aideNativeWebFacade.GetAllAwardType(); // ddlTypeID.DataSource = ds.Tables[0]; // ddlTypeID.DataTextField = "TypeName"; // ddlTypeID.DataValueField = "TypeID"; // ddlTypeID.DataBind(); // ///绑定需要填写信息 // IList<EnumDescription> NeedInfo = EnumDescription.GetFieldTexts( typeof( EnumerationList.MallNeedInfo ) ); // cbNeedInfo.DataSource = NeedInfo; // cbNeedInfo.DataValueField = "EnumValue"; // cbNeedInfo.DataTextField = "Description"; // cbNeedInfo.DataBind(); // for( int i = 0; i < cbNeedInfo.Items.Count; i++ ) // { // cbNeedInfo.Items[i].Selected = true; // } //} /// <summary> /// 数据初始化 /// </summary> private void Inition() { if (IntParam > 0) { AwardInfo info = FacadeManage.aideNativeWebFacade.GetAwardInfoByID(IntParam); CtrlHelper.SetText(txtAwardName, info.AwardName); CtrlHelper.SetText(txtInventory, info.Inventory.ToString()); CtrlHelper.SetText(txtPrice, info.UnitPrice.ToString()); CtrlHelper.SetText(txtGold, info.Gold.ToString()); CtrlHelper.SetText(txtDiamond, info.Diamond.ToString()); CtrlHelper.SetText(txtSortID, info.SortID.ToString()); //rbIsReturn.SelectedValue = info.IsReturn == true ? "1" : "0"; rbNullity.SelectedValue = info.Nullity.ToString(); ddlTypeID.SelectedValue = info.AwardType.ToString(); //for( int i = 0; i < cbNeedInfo.Items.Count; i++ ) //{ // int valu = Convert.ToInt32( cbNeedInfo.Items[i].Value ); // int num = info.NeedInfo & valu; // if( num == valu ) // { // cbNeedInfo.Items[i].Selected = true; // } // else // { // cbNeedInfo.Items[i].Selected = false; // } //} if (!string.IsNullOrEmpty(info.AwardImg)) { upBigImage.FilePath = info.AwardImg; } } }
public void MobileGetAwardInfo(System.Web.HttpContext context) { int queryInt = GameRequest.GetQueryInt("awardID", 0); AjaxJsonValid ajaxJsonValid = new AjaxJsonValid(); if (queryInt == 0) { ajaxJsonValid.msg = "缺少参数奖品ID"; context.Response.Write(ajaxJsonValid.SerializeToJson()); } else { AwardInfo awardInfo = FacadeManage.aideNativeWebFacade.GetAwardInfo(queryInt); if (awardInfo != null) { awardInfo.SmallImage = Fetch.GetUploadFileUrl(awardInfo.SmallImage); awardInfo.BigImage = Fetch.GetUploadFileUrl(awardInfo.BigImage); } ajaxJsonValid.AddDataItem("Data", awardInfo); ajaxJsonValid.SetValidDataValue(true); context.Response.Write(ajaxJsonValid.SerializeToJson()); } }
/// <summary> /// 点击保存 /// </summary> protected void btnSave_Click(object sender, EventArgs e) { if (!IsValid) { return; } if (string.IsNullOrEmpty(CtrlHelper.GetSelectValue(ddlTypeID))) { ShowError("请为商品选择一个商品类型"); return; } AwardInfo info = new AwardInfo(); if (IntParam > 0) { AuthUserOperationPermission(Permission.Edit); info = FacadeManage.aideNativeWebFacade.GetAwardInfoByID(IntParam); } else { AuthUserOperationPermission(Permission.Add); info.CollectDate = DateTime.Now; info.BuyCount = 0; } #region 图片验证 //缩率图上传 try { info.SmallImage = upSmallImage.FilePath; } catch (Exception ex) { ShowError("缩率图上传失败:" + ex.Message); return; } //展示图上传 try { info.BigImage = upBigImage.FilePath; } catch (Exception ex) { ShowError("展示图上传失败:" + ex.Message); return; } #endregion info.AwardName = CtrlHelper.GetText(txtAwardName); info.Description = CtrlHelper.GetText(txtDescription); info.Inventory = CtrlHelper.GetInt(txtInventory, 0); info.IsMember = false; info.IsReturn = rbIsReturn.SelectedValue == "0" ? false : true; info.NeedInfo = 1; info.Nullity = Convert.ToByte(rbNullity.SelectedValue); info.Price = CtrlHelper.GetInt(txtPrice, 0); info.SortID = CtrlHelper.GetInt(txtSortID, 0); info.TypeID = Convert.ToInt32(CtrlHelper.GetSelectValue(ddlTypeID)); int needInfo = 0; for (int i = 0; i < cbNeedInfo.Items.Count; i++) { if (cbNeedInfo.Items[i].Selected == true) { needInfo = needInfo | Convert.ToInt32(cbNeedInfo.Items[i].Value); } } info.NeedInfo = needInfo; bool result; if (IntParam > 0) { result = FacadeManage.aideNativeWebFacade.UpdateAwardInfo(info); DataMallType(); } else { result = FacadeManage.aideNativeWebFacade.InsertAwardInfo(info); } if (result) { ShowInfo("商品信息保存成功", "MallInfoList.aspx", 1000); } else { ShowError("商品信息保存失败"); } }
/// <summary> /// 保存商品信息 /// </summary> /// <param name="info">商品实体</param> public bool InsertAwardInfo(AwardInfo info) { aideNativeWebData.InsertAwardInfo(info); return(true); }
/// <summary> /// 更新商品信息 /// </summary> /// <param name="info">商品实体</param> public bool UpdateAwardInfo(AwardInfo info) { int result = aideNativeWebData.UpdateAwardInfo(info); return(result > 0 ? true : false); }
/// <summary> /// 点击保存 /// </summary> protected void btnSave_Click(object sender, EventArgs e) { if (!IsValid) { return; } if (string.IsNullOrEmpty(CtrlHelper.GetSelectValue(ddlTypeID))) { ShowError("请为商品选择一个商品类型"); return; } AwardInfo info = new AwardInfo(); if (IntParam > 0) { if (!AuthUserOperationPermission(Permission.Edit)) { return; } info = FacadeManage.aideNativeWebFacade.GetAwardInfoByID(IntParam); } else { if (!AuthUserOperationPermission(Permission.Add)) { return; } info.CollectDate = DateTime.Now; } #region 图片验证 //展示图上传 try { info.AwardImg = upBigImage.FilePath; } catch (Exception ex) { ShowError("展示图上传失败:" + ex.Message); return; } if (string.IsNullOrEmpty(info.AwardImg)) { ShowError("请上传商品大图"); return; } #endregion info.AwardName = CtrlHelper.GetText(txtAwardName); if (info.AwardName.Length > 32) { ShowError("商品名称过长!"); return; } info.Inventory = CtrlHelper.GetInt(txtInventory, 0); info.Nullity = Convert.ToByte(rbNullity.SelectedValue); info.UnitPrice = CtrlHelper.GetInt(txtPrice, 0); info.Gold = CtrlHelper.GetInt(txtGold, 0); info.Diamond = CtrlHelper.GetInt(txtDiamond, 0); info.SortID = CtrlHelper.GetInt(txtSortID, 0); info.AwardType = Convert.ToInt32(CtrlHelper.GetSelectValue(ddlTypeID)); bool result; if (IntParam > 0) { result = FacadeManage.aideNativeWebFacade.UpdateAwardInfo(info); } else { result = FacadeManage.aideNativeWebFacade.InsertAwardInfo(info); } if (result) { ShowInfo("商品信息保存成功", "MallInfoList.aspx", 1000); } else { ShowError("商品信息保存失败"); } }
/// <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> /// <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> 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()); } }
/// <summary> /// 根据指定的总价格及产出规则,计算获得的金币数及道具数量 /// </summary> /// <param name="totalCost">产出物总价格</param> /// <param name="awardID"></param> /// <returns>返回计算得出的奖品列表,或返回null</returns> public AwardDatas GetAwards(int totalCost, int awardID) { AwardInfo awardInfo = this.AwardConfig.GetAward(awardID); if (awardInfo != null) { Debug.LogFormat("<><AwardDataHelper.GetAwards>AwardInfo: {0}", awardInfo); AwardDatas awardDatas = new AwardDatas(); try { foreach (var awardConfig in awardInfo.Awards) { if (awardConfig is CoinAward) { awardDatas.Datas.Add(new AwardData() { ID = this.FundDataManager.GetCoinId(), Count = (int)(totalCost * awardConfig.Percent), Icon = "coin", AwardType = AwardTypes.COIN }); } else if (awardConfig is PropAward) { PropAward propAward = awardConfig as PropAward; //转成道具奖品产出规则 int cost = (int)(totalCost * propAward.Percent); //计算道具奖品的总价格 List <AwardData> sourceData = new List <AwardData>(); if (propAward.FoodAward) {//将食物表中的所有数据转成统一格式 List <PropertyItem> foods = this.PropertyConfig.GetPropertyList(); sourceData.AddRange(this.PropertyItemList2AwardDataList(foods)); } if (propAward.MaterialAward) {//将配饰表中所有的材料数据转成统一格式 } List <AwardData> propAwards = this.GetPropAwards(cost, sourceData);//根据金币数,从源数据中随机取出1~2个奖品 if (propAwards != null && propAwards.Count > 0) { awardDatas.Datas.AddRange(propAwards); } } } if (awardDatas.Datas.Count == 0) { Debug.LogErrorFormat("<><AwardDataHelper.GetAwards>Award config dosen't work, you should get a few coins as least. (totalCost: {0}, awardID: {1})", totalCost, awardID); } this.PrintAwardDatas(awardDatas); return(awardDatas); } catch (System.Exception ex) { Debug.LogErrorFormat("<><AwardDataHelper.GetAwards>Unknown error: {0}", ex.Message); return(null); } } else { Debug.LogErrorFormat("<><AwardDataHelper.GetAwards>Can't find the award config: {0}", awardID); return(null); } }