/// <summary> /// 带事务的Update /// </summary> /// <param name="entity"></param> /// <param name="trans">The trans.</param> /// <returns></returns> /// <remarks>2016/11/16 18:12:20</remarks> public bool Update(ConfigCrossactivityprizeEntity entity, DbTransaction trans) { var database = new SqlDatabase(this.ConnectionString); DbCommand commandWrapper = database.GetStoredProcCommand("dbo.P_ConfigCrossactivityprize_Update"); database.AddInParameter(commandWrapper, "@Idx", DbType.Int32, entity.Idx); database.AddInParameter(commandWrapper, "@ActivityId", DbType.Int32, entity.ActivityId); database.AddInParameter(commandWrapper, "@PrizeId", DbType.Int32, entity.PrizeId); database.AddInParameter(commandWrapper, "@PrizeType", DbType.Int32, entity.PrizeType); database.AddInParameter(commandWrapper, "@PrizeCode", DbType.Int32, entity.PrizeCode); database.AddInParameter(commandWrapper, "@PrizeCount", DbType.Int32, entity.PrizeCount); database.AddInParameter(commandWrapper, "@PrizeCount2", DbType.Int32, entity.PrizeCount2); database.AddInParameter(commandWrapper, "@Rate", DbType.Int32, entity.Rate); int results = 0; if (trans != null) { results = database.ExecuteNonQuery(commandWrapper, trans); } else { results = database.ExecuteNonQuery(commandWrapper); } return(Convert.ToBoolean(results)); }
/// <summary> /// 将IDataReader的当前记录读取到ConfigCrossactivityprizeEntity 对象 /// </summary> /// <param name="reader"></param> /// <returns></returns> public ConfigCrossactivityprizeEntity LoadSingleRow(IDataReader reader) { var obj = new ConfigCrossactivityprizeEntity(); obj.Idx = (System.Int32)reader["Idx"]; obj.ActivityId = (System.Int32)reader["ActivityId"]; obj.PrizeId = (System.Int32)reader["PrizeId"]; obj.PrizeType = (System.Int32)reader["PrizeType"]; obj.PrizeCode = (System.Int32)reader["PrizeCode"]; obj.PrizeCount = (System.Int32)reader["PrizeCount"]; obj.PrizeCount2 = (System.Int32)reader["PrizeCount2"]; obj.Rate = (System.Int32)reader["Rate"]; return(obj); }
/// <summary> /// GetById /// </summary> /// <param name="idx">idx</param> /// <returns>ConfigCrossactivityprizeEntity</returns> /// <remarks>2016/11/16 18:12:20</remarks> public ConfigCrossactivityprizeEntity GetById(System.Int32 idx) { var database = new SqlDatabase(this.ConnectionString); DbCommand commandWrapper = database.GetStoredProcCommand("P_ConfigCrossactivityprize_GetById"); database.AddInParameter(commandWrapper, "@Idx", DbType.Int32, idx); ConfigCrossactivityprizeEntity obj = null; using (IDataReader reader = database.ExecuteReader(commandWrapper)) { if (reader.Read()) { obj = LoadSingleRow(reader); } } return(obj); }
public ConfigCrossactivityprizeEntity Prize(int vipLevel) { ConfigCrossactivityprizeEntity result = null; int rate = 0; if (vipLevel < 2) { rate = RandomHelper.GetInt32(801, 10000); } else { rate = RandomHelper.GetInt32(0, 10000); } int index = 20; do { var prizeId = CacheFactory.TurntableCache.Prize(rate); result = CacheFactory.TurntableCache.GetPrize(prizeId); if (result != null) { if (result.PrizeType == (int)EnumCrossActivityType.GoleBar) { if (_ActivityInfo.GoldBarNumber < result.PrizeCount) { rate = RandomHelper.GetInt32(801, 10000); } else { break; } } else { break; } } index--; } while (index > 0); return(result); }
public MessageCode AddPrize(ConfigCrossactivityprizeEntity prize, Guid managerId, string zoneName, ref ItemPackageFrame package, ref int addPoint, ref int addGoldBar, ref int itemCode, ref int itemCount) { switch (prize.PrizeType) { case (int)EnumCrossActivityType.Point: itemCount = RandomHelper.GetInt32(prize.PrizeCount, prize.PrizeCount2); addPoint = itemCount; break; case (int)EnumCrossActivityType.Coin: break; case (int)EnumCrossActivityType.Item: if (package == null) { package = ItemCore.Instance.GetPackage(managerId, EnumTransactionType.CrossActivity, zoneName); } if (package == null) { return(MessageCode.NbParameterError); } itemCode = prize.PrizeCode; itemCount = prize.PrizeCount; return(package.AddItems(prize.PrizeCode, prize.PrizeCount)); case (int)EnumCrossActivityType.Random: itemCode = CacheFactory.LotteryCache.LotteryByLib(prize.PrizeCode); if (itemCode == 0) { return(MessageCode.NbParameterError); } if (package == null) { package = ItemCore.Instance.GetPackage(managerId, EnumTransactionType.CrossActivity, zoneName); } if (package == null) { return(MessageCode.NbParameterError); } itemCount = prize.PrizeCount; return(package.AddItems(itemCode, prize.PrizeCount)); case (int)EnumCrossActivityType.Equipment: itemCode = GetRandomDebris();; if (itemCode == 0) { return(MessageCode.NbParameterError); } if (package == null) { package = ItemCore.Instance.GetPackage(managerId, EnumTransactionType.CrossActivity, zoneName); } if (package == null) { return(MessageCode.NbParameterError); } itemCount = prize.PrizeCount; return(package.AddItems(itemCode, prize.PrizeCount)); case (int)EnumCrossActivityType.GoleBar: itemCount = RandomHelper.GetInt32(prize.PrizeCount, prize.PrizeCount2); addGoldBar = itemCount; _ActivityInfo.GoldBarNumber = _ActivityInfo.GoldBarNumber - addGoldBar; if (_ActivityInfo.GoldBarNumber < 0) { _ActivityInfo.GoldBarNumber = 0; } break; } return(MessageCode.Success); }
public static bool Update(ConfigCrossactivityprizeEntity configCrossactivityprizeEntity, DbTransaction trans = null, string zoneId = "") { var provider = new ConfigCrossactivityprizeProvider(zoneId); return(provider.Update(configCrossactivityprizeEntity, trans)); }
/// <summary> /// Update /// </summary> /// <param name="entity"></param> /// <returns></returns> /// <remarks>2016/11/16 18:12:20</remarks> public bool Update(ConfigCrossactivityprizeEntity entity) { return(Update(entity, null)); }
/// <summary> /// Insert /// </summary> /// <param name="entity"></param> /// <param name="trans">The trans.</param> /// <returns></returns> /// <remarks>2016/11/16 18:12:20</remarks> public bool Insert(ConfigCrossactivityprizeEntity entity) { return(Insert(entity, null)); }