/// <summary>
        /// 带事务的Update
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="trans">The trans.</param>
        /// <returns></returns>
        /// <remarks>2016/6/11 17:48:19</remarks>
        public bool Update(ActivityexCountrecordEntity entity, DbTransaction trans = null)
        {
            var       database       = new SqlDatabase(this.ConnectionString);
            DbCommand commandWrapper = database.GetStoredProcCommand("dbo.P_ActivityexCountrecord_Update");

            database.AddInParameter(commandWrapper, "@Idx", DbType.Int32, entity.Idx);
            database.AddInParameter(commandWrapper, "@ZoneActivityId", DbType.Int32, entity.ZoneActivityId);
            database.AddInParameter(commandWrapper, "@ManagerId", DbType.Guid, entity.ManagerId);
            database.AddInParameter(commandWrapper, "@ExcitingId", DbType.Int32, entity.ExcitingId);
            database.AddInParameter(commandWrapper, "@GroupId", DbType.Int32, entity.GroupId);
            database.AddInParameter(commandWrapper, "@ExData", DbType.Int32, entity.ExData);
            database.AddInParameter(commandWrapper, "@CurData", DbType.Int32, entity.CurData);
            database.AddInParameter(commandWrapper, "@ExStep", DbType.Int32, entity.ExStep);
            database.AddInParameter(commandWrapper, "@AlreadySendCount", DbType.Int32, entity.AlreadySendCount);
            database.AddInParameter(commandWrapper, "@Status", DbType.Int32, entity.Status);
            database.AddInParameter(commandWrapper, "@RecordDate", DbType.Date, entity.RecordDate);
            database.AddInParameter(commandWrapper, "@UpdateTime", DbType.DateTime, entity.UpdateTime);
            database.AddInParameter(commandWrapper, "@RowTime", DbType.DateTime, entity.RowTime);


            int results = 0;

            if (trans != null)
            {
                results = database.ExecuteNonQuery(commandWrapper, trans);
            }
            else
            {
                results = database.ExecuteNonQuery(commandWrapper);
            }

            entity.Idx = (System.Int32)database.GetParameterValue(commandWrapper, "@Idx");

            return(Convert.ToBoolean(results));
        }
Example #2
0
        MessageCode Receive()
        {
            var exRecord = new ActivityexCountrecordEntity();

            exRecord.Idx              = 1;
            exRecord.ZoneActivityId   = 19;
            exRecord.ExcitingId       = 32;
            exRecord.GroupId          = 2;
            exRecord.ExData           = 6000;
            exRecord.CurData          = 6000;
            exRecord.ExStep           = 1;
            exRecord.AlreadySendCount = 0;

            var detail         = new TemplateActivityexdetailEntity(105, 32, 2, 1, 5000, 0, 0, 0, 1, 310161);
            int prizeItemcode  = detail.EffectValue;
            int prizeItemCount = exRecord.ExData - exRecord.AlreadySendCount;
            int itemCount      = 0;
            var group          = new TemplateActivityexgroupEntity(103, 32, 2, 1, 108, 3, false, 0, 5000);

            if (group.ExRequireId == (int)EnumActivityExRequire.ChargeCount) //充值计数
            {
                itemCount = prizeItemCount / group.RankCount;
                exRecord.AlreadySendCount += (itemCount * group.RankCount);
                if (detail.EffectRate > 0)
                {
                    prizeItemCount = itemCount * detail.EffectRate;
                }
            }
            else
            {
                exRecord.AlreadySendCount += prizeItemCount;
            }
            MessageCode           code           = MessageCode.Success;
            ItemPackageFrame      package        = null;
            ScoutingGoldbarEntity goldBarManager = null;
            bool isInsert = false;

            if (prizeItemcode > 10000) //物品
            {
                package = ItemCore.Instance.GetPackage(new Guid("A995C3B5-4CA2-4348-A1B0-A60E013163A5"), EnumTransactionType.ActivityExPrize);
                if (package == null || package.PackageSize < prizeItemCount)
                {
                    return(MessageCode.ItemPackageFull);
                }
                code = package.AddItems(prizeItemcode, prizeItemCount);
                if (code != MessageCode.Success)
                {
                    return(code);
                }
            }
            return(MessageCode.Success);
        }
        /// <summary>
        /// GetById
        /// </summary>
        /// <param name="idx">idx</param>
        /// <returns>ActivityexCountrecordEntity</returns>
        /// <remarks>2016/6/11 17:48:19</remarks>
        public ActivityexCountrecordEntity GetById(System.Int32 idx)
        {
            var database = new SqlDatabase(this.ConnectionString);

            DbCommand commandWrapper = database.GetStoredProcCommand("P_ActivityexCountrecord_GetById");

            database.AddInParameter(commandWrapper, "@Idx", DbType.Int32, idx);


            ActivityexCountrecordEntity obj = null;

            using (IDataReader reader = database.ExecuteReader(commandWrapper))
            {
                if (reader.Read())
                {
                    obj = LoadSingleRow(reader);
                }
            }
            return(obj);
        }
        /// <summary>
        /// 将IDataReader的当前记录读取到ActivityexCountrecordEntity 对象
        /// </summary>
        /// <param name="reader"></param>
        /// <returns></returns>
        public ActivityexCountrecordEntity LoadSingleRow(IDataReader reader)
        {
            var obj = new ActivityexCountrecordEntity();

            obj.Idx              = (System.Int32)reader["Idx"];
            obj.ZoneActivityId   = (System.Int32)reader["ZoneActivityId"];
            obj.ManagerId        = (System.Guid)reader["ManagerId"];
            obj.ExcitingId       = (System.Int32)reader["ExcitingId"];
            obj.GroupId          = (System.Int32)reader["GroupId"];
            obj.ExData           = (System.Int32)reader["ExData"];
            obj.CurData          = (System.Int32)reader["CurData"];
            obj.ExStep           = (System.Int32)reader["ExStep"];
            obj.AlreadySendCount = (System.Int32)reader["AlreadySendCount"];
            obj.Status           = (System.Int32)reader["Status"];
            obj.RecordDate       = (System.DateTime)reader["RecordDate"];
            obj.UpdateTime       = (System.DateTime)reader["UpdateTime"];
            obj.RowTime          = (System.DateTime)reader["RowTime"];

            return(obj);
        }
        /// <summary>
        /// GetByManagerId
        /// </summary>
        /// <param name="managerId">managerId</param>
        /// <param name="zoneActivityId">zoneActivityId</param>
        /// <param name="groupId">groupId</param>
        /// <returns>ActivityexCountrecordEntity</returns>
        /// <remarks>2016/6/11 17:48:19</remarks>
        public ActivityexCountrecordEntity GetByManagerId(System.Guid managerId, System.Int32 zoneActivityId, System.Int32 groupId)
        {
            var database = new SqlDatabase(this.ConnectionString);

            DbCommand commandWrapper = database.GetStoredProcCommand("C_ActivityExCountRecord_GetByManagerId");

            database.AddInParameter(commandWrapper, "@ManagerId", DbType.Guid, managerId);
            database.AddInParameter(commandWrapper, "@ZoneActivityId", DbType.Int32, zoneActivityId);
            database.AddInParameter(commandWrapper, "@GroupId", DbType.Int32, groupId);


            ActivityexCountrecordEntity obj = null;

            using (IDataReader reader = database.ExecuteReader(commandWrapper))
            {
                if (reader.Read())
                {
                    obj = LoadSingleRow(reader);
                }
            }
            return(obj);
        }
        public static bool Update(ActivityexCountrecordEntity activityexCountrecordEntity, DbTransaction trans = null, string zoneId = "")
        {
            var provider = new ActivityexCountrecordProvider(zoneId);

            return(provider.Update(activityexCountrecordEntity, trans));
        }