/// <summary> /// 新增用户奖励 /// </summary> /// <returns></returns> public static async Task <long> InsertDragonBallUserLootAsync(BaseDbHelper dbHelper, DragonBallUserLootModel model) { var sql = @" insert into Activity.[dbo].[tbl_DragonBallUserLoot] ( [UserId] ,[LootName] ,[LootStartTime] ,[LootEndTime] ,[LootDesc] ,[LootPicUrl] ,[CreateDatetime] ,[LastUpdateDateTime] ,[LootType] ,[LootTitile] ,[LootMemo] ) values ( @UserId ,@LootName ,@LootStartTime ,@LootEndTime ,@LootDesc ,@LootPicUrl ,getdate() ,getdate() ,@LootType ,@LootTitile ,@LootMemo ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@UserId", model.UserId); cmd.AddParameter("@LootName", model.LootName ?? ""); cmd.AddParameter("@LootStartTime", model.LootStartTime); cmd.AddParameter("@LootEndTime", model.LootEndTime); cmd.AddParameter("@LootDesc", model.LootDesc ?? ""); cmd.AddParameter("@LootPicUrl", model.LootPicUrl ?? ""); cmd.AddParameter("@LootType", model.LootType); cmd.AddParameter("@LootTitile", model.LootTitile ?? ""); cmd.AddParameter("@LootMemo", model.LootMemo ?? ""); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 新增公众号领红包 - 明细数据 /// </summary> /// <returns></returns> public static async Task<long> InsertOARedEnvelopeDetailAsync(BaseDbHelper dbHelper, OARedEnvelopeDetailModel redEnvelopeDetailModel) { var sql = @" INSERT INTO Activity.[dbo].[tbl_OARedEnvelopeDetail] ([UserId] ,[NickName] ,[WXHeadImgUrl] ,[OpenId] ,[ReferrerUserId] ,[GetMoney] ,[GetDate] ,[OfficialAccountType] ,DrivingLicense ,IsDeleted ) VALUES ( @UserId ,@NickName ,@WXHeadPicUrl ,@OpenId ,@ReferrerUserId ,@GetMoney ,@GETDATE ,@OfficialAccountType ,@DrivingLicense ,0 ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@UserId", redEnvelopeDetailModel.UserId); cmd.AddParameter("@NickName", redEnvelopeDetailModel.NickName ?? ""); cmd.AddParameter("@WXHeadPicUrl", redEnvelopeDetailModel.WXHeadImgUrl ?? ""); cmd.AddParameter("@OpenId", redEnvelopeDetailModel.OpenId ?? ""); cmd.AddParameter("@ReferrerUserId", redEnvelopeDetailModel.ReferrerUserId); cmd.AddParameter("@GetMoney", redEnvelopeDetailModel.GetMoney); cmd.AddParameter("@GetDate", DateTime.Now.Date); cmd.AddParameter("@OfficialAccountType", redEnvelopeDetailModel.OfficialAccountType); cmd.AddParameter("@DrivingLicense", redEnvelopeDetailModel.DrivingLicense ?? ""); var result = await dbHelper.ExecuteScalarAsync(cmd); return Convert.ToInt64(result); } }
/// <summary> /// 新增 - 小游戏 - 用户信息 /// </summary> /// <returns></returns> public static async Task <long> InsertGameUserInfoAsync(int activityId, Guid userId, DateTime date, BaseDbHelper dbHelper = null) { var sql = @"insert into Activity.[dbo].[tbl_GameUserInfo] ( UserId, ActivityId, Point, IsVisit, VisitDateTime, CreateDatetime, LastUpdateDateTime ) select @UserId, @ActivityId, 0, 1, @date, @date, @date where NOT EXISTS ( SELECT 1 FROM Activity.[dbo].[tbl_GameUserInfo] xx WHERE xx.UserId = @UserId and ActivityId = @ActivityId ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@ActivityId", activityId); cmd.AddParameter("@userId", userId); cmd.AddParameter("@date", date); long result = 0; if (dbHelper == null) { long.TryParse((await DbHelper.ExecuteScalarAsync(cmd)).ToString(), out result); } else { long.TryParse((await dbHelper.ExecuteScalarAsync(cmd)).ToString(), out result); } return(Convert.ToInt64(result)); } }
/// <summary> /// 保存公众号领红包统计 /// </summary> /// <param name="dbHelper"></param> /// <param name="setting"></param> /// <returns></returns> public static async Task <long> InsertOARedEnvelopeStatisticsAsync(BaseDbHelper dbHelper, OARedEnvelopeStatisticsModel setting) { var sql = @"INSERT INTO [Activity].[dbo].[tbl_OARedEnvelopeStatistics] ([StatisticsDate] ,[DayMaxMoney] ,[UserCount] ,[RedEnvelopeCount] ,[RedEnvelopeSumMoney] ,[RedEnvelopeAvg] ,[OfficialAccountType] ,[CreateDatetime] ,[LastUpdateDateTime]) VALUES ( @StatisticsDate ,@DayMaxMoney ,@UserCount ,@RedEnvelopeCount ,@RedEnvelopeSumMoney ,@RedEnvelopeAvg ,@OfficialAccountType ,getdate() ,getdate() ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@StatisticsDate", setting.StatisticsDate); cmd.AddParameter("@DayMaxMoney", setting.DayMaxMoney); cmd.AddParameter("@UserCount", setting.UserCount); cmd.AddParameter("@RedEnvelopeCount", setting.RedEnvelopeCount); cmd.AddParameter("@RedEnvelopeSumMoney", setting.RedEnvelopeSumMoney); cmd.AddParameter("@RedEnvelopeAvg", setting.RedEnvelopeAvg); cmd.AddParameter("@OfficialAccountType", setting.OfficialAccountType); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 新增 - 小游戏 - 马牌用户助力 /// </summary> /// <returns></returns> public static async Task <long> InsertGameMaPaiUserSupportAsync(BaseDbHelper dbHelper, GameMaPaiUserSupportModel data) { var sql = @" insert into Activity.[dbo].[tbl_GameMaPaiUserSupport] ( [ActivityId] ,[UserId] ,[SupportOpenId] ,[SupportNickName] ,[SupportHeadImgURL] ,[Distance] ,[CreateDatetime] ,[LastUpdateDateTime] ) values ( @ActivityId, @userId, @SupportOpenId, @SupportNickName, @SupportHeadImgURL, @Distance, getdate(), getdate() ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@ActivityId", data.ActivityId); cmd.AddParameter("@userId", data.UserId); cmd.AddParameter("@SupportOpenId", data.SupportOpenId ?? ""); cmd.AddParameter("@SupportNickName", data.SupportNickName ?? ""); cmd.AddParameter("@SupportHeadImgURL", data.SupportHeadImgURL ?? ""); cmd.AddParameter("@Distance", data.Distance); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 新增 - 小游戏 - 用户积分变动明细 /// </summary> /// <returns></returns> public static async Task <long> InsertGameUserPointDetailAsync(BaseDbHelper dbHelper, GameUserPointDetailModel data) { var sql = @" insert into Activity.[dbo].[tbl_GameUserPointDetail] ( UserId, ActivityId, Point, CreateDatetime, LastUpdateDateTime, [Status], [Memo], IsUsed ) values ( @UserId, @ActivityId, @Point, getdate(), getdate(), @Status, @Memo, 0 ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@ActivityId", data.ActivityId); cmd.AddParameter("@userId", data.UserId); cmd.AddParameter("@Point", data.Point); cmd.AddParameter("@Status", data.Status ?? ""); cmd.AddParameter("@Memo", data.Memo ?? ""); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 提交问卷 回答结果 /// </summary> /// <param name="helper"></param> /// <param name="model"></param> /// <returns></returns> public static async Task <long> SubmitQuestionnaireAnswerResult(BaseDbHelper helper, QuestionnaireAnswerResultModel model) { var sql = @" INSERT INTO [Activity].[dbo].[QuestionnaireAnswerResult] ([QuestionnaireAnswerID] ,[AnswerResultStatus] ,[UseIntegral] ,[WinCouponCount] ,[CreateDatetime] ,[LastUpdateDateTime]) VALUES (@QuestionnaireAnswerID ,@AnswerResultStatus ,@UseIntegral ,@WinCouponCount ,getdate() ,getdate()); SELECT SCOPE_IDENTITY(); "; try { using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@QuestionnaireAnswerID", model.QuestionnaireAnswerID); cmd.AddParameter("@AnswerResultStatus", model.AnswerResultStatus); cmd.AddParameter("@UseIntegral", model.UseIntegral); cmd.AddParameter("@WinCouponCount", model.WinCouponCount); var result = await helper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } } catch (Exception ex) { Logger.Error($"DB异常=>{nameof(SubmitQuestionnaireAnswerResult)} =>{ex}"); throw ex; } }
/// <summary> /// 新增用户正在做的任务 /// </summary> /// <returns></returns> public static async Task <long> InsertDragonBallUserMissionAsync(BaseDbHelper dbHelper, DragonBallUserMissionModel model) { var sql = @" insert into Activity.[dbo].[tbl_DragonBallUserMission] ( UserId, MissionId, MissionStatus, DragonBallCount, CreateDatetime, LastUpdateDateTime ) values ( @UserId, @MissionId, @MissionStatus, @DragonBallCount, getdate(), getdate() ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@UserId", model.UserId); cmd.AddParameter("@MissionId", model.MissionId); cmd.AddParameter("@MissionStatus", model.MissionStatus); cmd.AddParameter("@DragonBallCount", model.DragonBallCount); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 提交问卷 回答 /// </summary> /// <param name="helper"></param> /// <param name="model"></param> /// <returns></returns> public static async Task <long> SubmitQuestionnaire(BaseDbHelper helper, QuestionnaireAnswerRecordModel model) { var sql = @" INSERT INTO [Activity].[dbo].[QuestionnaireAnswerRecord] ([UserID] ,[QuestionnaireID] ,[QuestionnaireName] ,[QuestionID] ,[QuestionName] ,[QuestionType] ,[AnswerText] ,[AnswerOptionID] ,[AnswerOptionContent] ,[AnswerDate] ,[QuestionScore] ,[ObjectID] ,[CreateDateTime] ,[LastUpdateDateTime] ,[IsDeleted]) VALUES (@UserID ,@QuestionnaireID ,@QuestionnaireName ,@QuestionID ,@QuestionName ,@QuestionType ,@AnswerText ,@AnswerOptionID ,@AnswerOptionContent ,@AnswerDate ,@QuestionScore ,@ObjectID ,getdate() ,getdate() ,0); SELECT SCOPE_IDENTITY(); "; try { using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@UserID", model.UserID); cmd.AddParameter("@QuestionnaireID", model.QuestionnaireID); cmd.AddParameter("@QuestionnaireName", model.QuestionnaireName ?? ""); cmd.AddParameter("@QuestionID", model.QuestionID); cmd.AddParameter("@QuestionName", model.QuestionName ?? ""); cmd.AddParameter("@QuestionType", model.QuestionType); cmd.AddParameter("@AnswerText", model.AnswerText ?? ""); cmd.AddParameter("@AnswerOptionID", model.AnswerOptionID); cmd.AddParameter("@AnswerOptionContent", model.AnswerOptionContent ?? ""); cmd.AddParameter("@AnswerDate", model.AnswerDate); cmd.AddParameter("@QuestionScore", model.QuestionScore); cmd.AddParameter("@ObjectID", model.ObjectID); var result = await helper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } } catch (Exception ex) { Logger.Error($"DB异常=>{nameof(SubmitQuestionnaire)} =>{ex}"); throw ex; } }
/// <summary> /// 保存公众号领红包设置 /// </summary> /// <param name="dbHelper"></param> /// <param name="setting"></param> /// <returns></returns> public static async Task <long> InsertOARedEnvelopeSettingAsync(BaseDbHelper dbHelper, OARedEnvelopeSettingModel setting) { var sql = @"INSERT INTO Configuration.[dbo].[tbl_OARedEnvelopeSetting] ([ConditionPrice] ,[ConditionPriceFlag] ,[ConditionCarModelFlag] ,[DayMaxMoney] ,[AvgMoney] ,[ActivityRuleText] ,[FailTipText] ,[QRCodeUrl] ,[QRCodeTipText] ,[ShareTitleText] ,[ShareUrl] ,[SharePictureUrl] ,[ShareText] ,[OfficialAccountType] ,[CreateDatetime] ,[LastUpdateDateTime] ,[CreateBy] ,[LastUpdateBy] ,PerMaxMoney ,PerMinMoney ,OpenIdLegalDate ,Channel ) VALUES ( @ConditionPrice ,@ConditionPriceFlag ,@ConditionCarModelFlag ,@DayMaxMoney ,@AvgMoney ,@ActivityRuleText ,@FailTipText ,@QRCodeUrl ,@QRCodeTipText ,@ShareTitleText ,@ShareUrl ,@SharePictureUrl ,@ShareText ,@OfficialAccountType ,@CreateDatetime ,@LastUpdateDateTime ,@CreateBy ,@LastUpdateBy ,@PerMaxMoney ,@PerMinMoney ,@OpenIdLegalDate ,@Channel ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@ConditionPrice", setting.ConditionPrice); cmd.AddParameter("@ConditionPriceFlag", setting.ConditionPriceFlag); cmd.AddParameter("@ConditionCarModelFlag", setting.ConditionCarModelFlag); cmd.AddParameter("@DayMaxMoney", setting.DayMaxMoney); cmd.AddParameter("@AvgMoney", setting.AvgMoney); cmd.AddParameter("@ActivityRuleText", setting.ActivityRuleText ?? ""); cmd.AddParameter("@FailTipText", setting.FailTipText ?? ""); cmd.AddParameter("@QRCodeUrl", setting.QRCodeUrl ?? ""); cmd.AddParameter("@QRCodeTipText", setting.QRCodeTipText ?? ""); cmd.AddParameter("@ShareTitleText", setting.ShareTitleText ?? ""); cmd.AddParameter("@ShareUrl", setting.ShareUrl ?? ""); cmd.AddParameter("@SharePictureUrl", setting.SharePictureUrl ?? ""); cmd.AddParameter("@ShareText", setting.ShareText ?? ""); cmd.AddParameter("@OfficialAccountType", setting.OfficialAccountType); cmd.AddParameter("@CreateDatetime", DateTime.Now); cmd.AddParameter("@LastUpdateDateTime", DateTime.Now); cmd.AddParameter("@CreateBy", setting.CreateBy ?? ""); cmd.AddParameter("@LastUpdateBy", setting.LastUpdateBy ?? ""); cmd.AddParameter("@PerMaxMoney", setting.PerMaxMoney); cmd.AddParameter("@PerMinMoney", setting.PerMinMoney); cmd.AddParameter("@OpenIdLegalDate", ((object)setting.OpenIdLegalDate) ?? DBNull.Value); cmd.AddParameter("@Channel", setting.Channel ?? ""); var result = await dbHelper.ExecuteScalarAsync(cmd); return(Convert.ToInt64(result)); } }
/// <summary> /// 新增 - 小游戏 - 新增用户奖品明细 /// </summary> /// <returns></returns> public static async Task <long> InsertGameUserPrizeAsync(BaseDbHelper dbHelper = null, GameUserPrizeModel model = null) { long result = 0; var sql = @" insert into Activity.[dbo].[tbl_GameUserPrize] ([ActivityId] ,[UserId] ,[Point] ,[PrizeId] ,[PrizeName] ,[PrizePicUrl] ,[PrizeTitle] ,[PrizeDesc] ,[PrizeStartTime] ,[PrizeEndTime] ,[CreateDatetime] ,[LastUpdateDateTime] ,[PromotionGetRuleGuid] ,[PromotionCode] ,[PromotionId] ,[IsBroadCastShow] ,TodayRank ,GetPrizeDate ,PrizeType ) values ( @ActivityId ,@UserId ,@Point ,@PrizeId ,@PrizeName ,@PrizePicUrl ,@PrizeTitle ,@PrizeDesc ,@PrizeStartTime ,@PrizeEndTime ,getdate() ,getdate() ,@PromotionGetRuleGuid ,@PromotionCode ,@PromotionId ,@IsBroadCastShow ,@TodayRank ,@GetPrizeDate ,@PrizeType ); SELECT SCOPE_IDENTITY(); "; using (var cmd = new SqlCommand(sql)) { cmd.AddParameter("@ActivityId", model.ActivityId); cmd.AddParameter("@UserId", model.UserId); cmd.AddParameter("@Point", model.Point); cmd.AddParameter("@PrizeId", model.PrizeId); cmd.AddParameter("@PrizeName", model.PrizeName ?? ""); cmd.AddParameter("@PrizePicUrl", model.PrizePicUrl ?? ""); cmd.AddParameter("@PrizeTitle", model.PrizeTitle ?? ""); cmd.AddParameter("@PrizeDesc", model.PrizeDesc ?? ""); cmd.AddParameter("@PrizeStartTime", (object)model.PrizeStartTime ?? DBNull.Value); cmd.AddParameter("@PrizeEndTime", (object)model.PrizeEndTime ?? DBNull.Value); cmd.AddParameter("@PromotionGetRuleGuid", (object)model.PromotionGetRuleGuid ?? DBNull.Value); cmd.AddParameter("@PromotionCode", model.PromotionCode ?? ""); cmd.AddParameter("@PromotionId", (object)model.PromotionId ?? DBNull.Value); cmd.AddParameter("@IsBroadCastShow", model.IsBroadCastShow); cmd.AddParameter("@TodayRank", model.TodayRank); cmd.AddParameter("@GetPrizeDate", model.GetPrizeDate); cmd.AddParameter("@PrizeType", model.PrizeType); if (dbHelper == null) { result = Convert.ToInt64(await DbHelper.ExecuteScalarAsync(cmd)); } else { result = Convert.ToInt64(await dbHelper.ExecuteScalarAsync(cmd)); } return(result); } }