public BuilderRedPacketsForEqual(RedPacket redpacket, string uuid) { this.redpacket = redpacket; this.uuid = uuid; this.hadGetRedPacket = new HadGetRedPacket(); this.result = new RedPacketResult(); result.Status = (int)MRC.Data.Enum.EnumGetRedPacketStatus.Error; }
public ActionResult GetRedPacket(string ID) { Result result = new Result(); var redpacketStr2 = RedisHelper.Get(PrefixKeyHelper.GetRedPacketPK() + ID); if (redpacketStr2.IsNullOrEmpty()) { result.Msg = "红包已失效"; return(Json(result)); } RedPacket redpacketTest = JsonHelper.Deserialize <RedPacket>(redpacketStr2); RedPacketResult builderResult = new RedPacketResult(); for (int i = 0; i < redpacketTest.num; i++) { var redpacketStr = RedisHelper.Get(PrefixKeyHelper.GetRedPacketPK() + ID); RedPacket redpacket = JsonHelper.Deserialize <RedPacket>(redpacketStr); if (redpacket.builderStrategy == (int)Data.Enum.EnumRedPacketType.FixedAverage) { BuilderRedPacketsForEqual builder = new BuilderRedPacketsForEqual(redpacket, this.CurrentSession.UserId); builderResult = builder.update(); } else if (redpacket.builderStrategy == (int)Data.Enum.EnumRedPacketType.Radom) { BuilderRedPacketsForRadom builder = new BuilderRedPacketsForRadom(redpacket, this.CurrentSession.UserId); builderResult = builder.update(); } else { } } if (builderResult.Status == (int)(int)Data.Enum.EnumGetRedPacketStatus.GetOK) { result.Msg = "领取成功"; result.Status = Data.Enum.ResultStatus.OK; } else if (builderResult.Status == (int)(int)Data.Enum.EnumGetRedPacketStatus.Error) { result.Msg = builderResult.Message; result.Status = Data.Enum.ResultStatus.Failed; } else if (builderResult.Status == (int)(int)Data.Enum.EnumGetRedPacketStatus.Over) { result.Msg = "红包已领完"; result.Status = Data.Enum.ResultStatus.Failed; } return(Json(result)); }