/// <summary> /// 带事务的Update /// </summary> /// <param name="entity"></param> /// <param name="trans">The trans.</param> /// <returns></returns> /// <remarks>2016/6/6 19:10:26</remarks> public bool Update(ExchangeInfoEntity entity, DbTransaction trans) { var database = new SqlDatabase(this.ConnectionString); DbCommand commandWrapper = database.GetStoredProcCommand("dbo.P_ExchangeInfo_Update"); database.AddInParameter(commandWrapper, "@Idx", DbType.AnsiString, entity.Idx); database.AddInParameter(commandWrapper, "@ExchangeType", DbType.Int32, entity.ExchangeType); database.AddInParameter(commandWrapper, "@ZoneName", DbType.Int32, entity.ZoneName); database.AddInParameter(commandWrapper, "@Account", DbType.AnsiString, entity.Account); database.AddInParameter(commandWrapper, "@ManagerId", DbType.Guid, entity.ManagerId); database.AddInParameter(commandWrapper, "@AtZoneId", DbType.Int32, entity.AtZoneId); database.AddInParameter(commandWrapper, "@PackId", DbType.Int32, entity.PackId); database.AddInParameter(commandWrapper, "@BatchId", DbType.Int32, entity.BatchId); database.AddInParameter(commandWrapper, "@Status", DbType.Int32, entity.Status); database.AddInParameter(commandWrapper, "@RowTime", DbType.DateTime, entity.RowTime); database.AddInParameter(commandWrapper, "@UpdateTime", DbType.DateTime, entity.UpdateTime); database.AddInParameter(commandWrapper, "@RowVersion", DbType.Binary, entity.RowVersion); database.AddInParameter(commandWrapper, "@PlatformCode", DbType.AnsiString, entity.PlatformCode); int results = 0; if (trans != null) { results = database.ExecuteNonQuery(commandWrapper, trans); } else { results = database.ExecuteNonQuery(commandWrapper); } return(Convert.ToBoolean(results)); }
/// <summary> /// GetById /// </summary> /// <param name="idx">idx</param> /// <returns>ExchangeInfoEntity</returns> /// <remarks>2016/6/6 19:10:26</remarks> public ExchangeInfoEntity GetById(System.String idx) { var database = new SqlDatabase(this.ConnectionString); DbCommand commandWrapper = database.GetStoredProcCommand("P_ExchangeInfo_GetById"); database.AddInParameter(commandWrapper, "@Idx", DbType.AnsiString, idx); ExchangeInfoEntity obj = null; using (IDataReader reader = database.ExecuteReader(commandWrapper)) { if (reader.Read()) { obj = LoadSingleRow(reader); } } return(obj); }
/// <summary> /// 将IDataReader的当前记录读取到ExchangeInfoEntity 对象 /// </summary> /// <param name="reader"></param> /// <returns></returns> public ExchangeInfoEntity LoadSingleRow(IDataReader reader) { var obj = new ExchangeInfoEntity(); obj.Idx = (System.String)reader["Idx"]; obj.ExchangeType = (System.Int32)reader["ExchangeType"]; obj.ZoneName = (System.Int32)reader["ZoneName"]; obj.Account = (System.String)reader["Account"]; obj.ManagerId = (System.Guid)reader["ManagerId"]; obj.AtZoneId = (System.Int32)reader["AtZoneId"]; obj.PackId = (System.Int32)reader["PackId"]; obj.BatchId = (System.Int32)reader["BatchId"]; obj.Status = (System.Int32)reader["Status"]; obj.RowTime = (System.DateTime)reader["RowTime"]; obj.UpdateTime = (System.DateTime)reader["UpdateTime"]; obj.RowVersion = (System.Byte[])reader["RowVersion"]; obj.PlatformCode = (System.String)reader["PlatformCode"]; return(obj); }
public void SetExchange() { //兑换码礼包添加 var entity = new ExchangeInfoEntity(); entity.ExchangeType = 1; entity.ZoneName = 0; entity.Account = ""; entity.ManagerId = Guid.Empty; entity.AtZoneId = 0; entity.PackId = 351; entity.BatchId = 17001; entity.Status = 0; var time = DateTime.Now; entity.UpdateTime = time; entity.RowTime = time; entity.PlatformCode = "h5_a8"; string a = "abcdefghijklmnopqrstuvwxyz"; var b = a.ToUpper() + "123456789"; var strs = b.ToCharArray(); var random = new Random(); for (int j = 0; j < 10000; j++) { string exchangeId = ""; for (int i = 0; i < 8; i++) { int s = 0; s = random.Next(35); var c = strs[s]; exchangeId += c; } exchangeId += entity.PackId.ToString(); entity.Idx = exchangeId; ExchangeInfoMgr.Insert(entity); } }
public ExchangeResponse Exchange(Guid managerId, string exchangeId, string pf) { if (string.IsNullOrEmpty(exchangeId)) { return(ResponseHelper.Create <ExchangeResponse>(MessageCode.ExchangeCodeNotExists)); } var manager = ManagerCore.Instance.GetManager(managerId); if (manager == null) { return(ResponseHelper.Create <ExchangeResponse>(MessageCode.NbParameterError)); } var packCode = CacheFactory.AppsettingCache.GetAppSetting(EnumAppsetting.H5_360GoodsBag); var arr = packCode.Split('|'); if (arr.Count() >= 2) { if (exchangeId == arr[0]) { //类型1为360礼包 return(Send360GoodsBay(manager, arr[1], arr[0], 1)); } } var packCode2 = CacheFactory.AppsettingCache.GetAppSetting(EnumAppsetting.H5_888kkk); var arr2 = packCode2.Split('|'); if (arr2.Count() >= 2) { if (exchangeId == arr2[0]) { //类型2为888kkk礼包 return(Send360GoodsBay(manager, arr2[1], arr2[0], 2)); } } ExchangeInfoEntity exchangeInfo = null; exchangeInfo = ExchangeInfoMgr.GetById(exchangeId); if (exchangeInfo == null) { return(ResponseHelper.Create <ExchangeResponse>(MessageCode.ExchangeCodeNotExists)); } if (exchangeInfo.Status == 1) { return(ResponseHelper.Create <ExchangeResponse>(MessageCode.ExchangeIsUsed)); } if (exchangeInfo.PlatformCode != "h5_a8") { if (pf != exchangeInfo.PlatformCode) { return(ResponseHelper.Create <ExchangeResponse>(MessageCode.ExchangeCodeNotExists)); } } int returnCode = -2; var package = ItemCore.Instance.GetPackage(managerId, EnumTransactionType.ExchangeCodePrize); int effectCoin = 0; int curValue = 0; int effectPoint = 0; int bindPoint = 0; ExchangeEntity exchangeEntity = new ExchangeEntity(); exchangeEntity.PrizeList = new List <ExchangePrizeEntity>(); var messagecode = MallCore.Instance.UseNewPlayerPack(managerId, exchangeInfo.PackId, package, EnumCoinChargeSourceType.Exchange, ref manager, ref effectCoin, ref curValue, ref effectPoint, ref bindPoint, exchangeEntity); if (messagecode != MessageCode.Success) { return(ResponseHelper.Create <ExchangeResponse>(messagecode)); } try { using (var transactionManager = new TransactionManager(Dal.ConnectionFactory.Instance.GetConnectionString(EnumDbType.Support))) { transactionManager.BeginTransaction(); ExchangeInfoMgr.Save(exchangeInfo.Idx, ShareUtil.PlatformCode, manager.Account, manager.Idx, ShareUtil.ZoneId, exchangeInfo.PackId, exchangeInfo.RowVersion, (int)MessageCode.ExchangeBatchLimit, ref returnCode, transactionManager.TransactionObject); if (returnCode == (int)MessageCode.Success) { if (effectCoin > 0) { ManagerUtil.SaveManagerData(manager, null); ManagerUtil.SaveManagerAfter(manager); } if (package.Save()) { package.Shadow.Save(); } if (effectPoint > 0) { messagecode = PayCore.Instance.AddBonus(manager.Account, effectPoint, EnumChargeSourceType.ExchangePrize, exchangeId); } } if (messagecode == MessageCode.Success) { transactionManager.Commit(); } else { transactionManager.Rollback(); } } if (returnCode != 0) { return(ResponseHelper.Create <ExchangeResponse>(returnCode)); } exchangeEntity.ExchangeType = exchangeInfo.ExchangeType; var response = ResponseHelper.CreateSuccess <ExchangeResponse>(); response.Data = new ExchangeEntity(); response.Data.PrizeList = new List <ExchangePrizeEntity>(); response.Data.PrizeList = exchangeEntity.PrizeList; response.Code = 0; return(response); } catch (Exception ex) { SystemlogMgr.Error("SaveItemException", ex); return(ResponseHelper.Create <ExchangeResponse>(returnCode)); } }
/// <summary> /// Update /// </summary> /// <param name="entity"></param> /// <returns></returns> /// <remarks>2016/6/6 19:10:26</remarks> public bool Update(ExchangeInfoEntity entity) { return(Update(entity, null)); }
/// <summary> /// Insert /// </summary> /// <param name="entity"></param> /// <param name="trans">The trans.</param> /// <returns></returns> /// <remarks>2016/6/6 19:10:26</remarks> public bool Insert(ExchangeInfoEntity entity) { return(Insert(entity, null)); }
public static bool Update(ExchangeInfoEntity exchangeInfoEntity, DbTransaction trans = null) { var provider = new ExchangeInfoProvider(); return(provider.Update(exchangeInfoEntity, trans)); }