public ActionResult PointDecrement() { PointTrackArgs args = RequestArgs <PointTrackArgs>(); if (args == null) { return(RespondResult(false, "参数无效。")); } args.DomainId = DomainContext.Domain.Id; args.Type = MemberPointTrackType.UserOperate; args.OperatorUser = MemberContext.User.Id; PointTrackResult pointTrackResult = _memberManager.PointTrack(args); #region 操作日志 if (pointTrackResult.Success) { _operatedLogManager.Create(new OperatedLogEntity() { Domain = DomainContext.Domain.Id, AppId = DomainContext.AppId, User = MemberContext.User.Id, IP = Request.UserHostAddress, Module = EnumModule.Member, Description = "消减用户积分" }); } #endregion return(RespondDataResult(pointTrackResult)); }
//TODO:积分变更记录中没有appid? /// <summary> /// 修改积分 /// </summary> /// <param name="args"></param> public PointTrackResult PointTrack(PointTrackArgs args) { PointTrackResult result = new PointTrackResult(); if (args == null) { return(result); } if (args.Quantity == 0) { return(result); } List <CommandParameter> parameterList = new List <CommandParameter>(); parameterList.Add(new CommandParameter("@domain", args.DomainId)); parameterList.Add(new CommandParameter("@memberId", args.MemberId)); parameterList.Add(new CommandParameter("@quantity", args.Quantity)); parameterList.Add(new CommandParameter("@type", (int)args.Type)); parameterList.Add(new CommandParameter("@tagName", args.TagName)); parameterList.Add(new CommandParameter("@tagId", args.TagId)); parameterList.Add(new CommandParameter("@operatorUser", args.OperatorUser)); parameterList.Add(new CommandParameter("@remark", args.Remark)); DataSet dsResult = _dataBase.ExecuteDataSet(CommandType.StoredProcedure, "TrackMemberPoint", parameterList, new string[] { "result" }); //result.Reason = int.Parse(dsResult.Tables[0].Rows[0]["Result"].ToString()); result.Success = true; result.LeftPoint = int.Parse(dsResult.Tables[0].Rows[0]["Point"].ToString()); return(result); }
internal PointTrackResult ShareCampaignToAppMessage(CampaignEntity campaign, Guid?memberId, string openId) { PointTrackResult result = new PointTrackResult(); if (campaign == null || campaign.Status != EnumCampaignStatus.Ongoing) { return(result); } if (campaign.ShareAppMessagePoint <= 0) { return(result); } #region 判断有没有分享过 ShareLogEntity log = ShareManager.GetShareLog(campaign.Id, openId); if (log == null) { log = new ShareLogEntity(); log.Member = memberId; log.OpenId = openId; log.PageId = campaign.Id; log.ShareAppMessage = true; ShareManager.Create(log); } else { if (log.ShareAppMessage && log.Member.HasValue) { return(result); } if (log.ShareAppMessage && memberId.HasValue == false) { return(result); } log.Member = memberId; log.ShareAppMessage = true; ShareManager.Update(log); } #endregion if (memberId.HasValue) { PointTrackArgs args = new PointTrackArgs(); args.DomainId = campaign.Domain; args.MemberId = memberId.Value; args.Quantity = campaign.ShareAppMessagePoint; args.Type = MemberPointTrackType.Campaign; args.TagName = campaign.Name; args.TagId = campaign.Id; result = MemberManager.PointTrack(args); } return(result); }
public Campaign_PictureVoteShareResult PictureVoteShareAppMessage(Guid campaignId, Guid?memberId, string openId) { Campaign_PictureVoteShareResult result = new Campaign_PictureVoteShareResult(); CampaignEntity campaign = _campaignManager.GetCampaign(campaignId); if (campaign == null || campaign.Status != EnumCampaignStatus.Ongoing) { return(result); } //分享活动奖励积分 PointTrackResult shareTimelineResult = _campaignManager.ShareCampaignToAppMessage(campaign, memberId, openId); if (shareTimelineResult.Success == false) { return(result); } result.Point = campaign.ShareAppMessagePoint; List <Campaign_PictureVoteItemEntity> itemList = GetMemberPictureVoteItemList(campaignId, memberId.Value); if (itemList.Count > 0) { //分享活动奖励票数 //当前已经发布出来的投票项目全部加指定票数 Campaign_PictureVoteEntity pictureVote = GetPictureVote(campaignId); if (pictureVote == null) { return(result); } List <CommandParameter> parameterList; foreach (var item in itemList) { parameterList = new List <CommandParameter>(); parameterList.Add(new CommandParameter("@itemId", item.Id)); parameterList.Add(new CommandParameter("@quantity", pictureVote.ShareAppMessageVote)); _campaignManager.DataBase.ExecuteNonQuery("UPDATE [Campaign_PictureVoteItem] SET [VoteQuantity] = [VoteQuantity] + @quantity WHERE [Id] = @itemId", parameterList); } result.Vote = pictureVote.ShareAppMessageVote; } return(result); }
public ShareResult ShareAppMessage(Guid campaignId, Guid?memberId, string openId) { ShareResult result = new ShareResult(); CampaignEntity campaign = GetCampaign(campaignId); if (campaign == null || campaign.Status != EnumCampaignStatus.Ongoing) { return(result); } PointTrackResult pointTrackResult = ShareCampaignToAppMessage(campaign, memberId, openId); if (pointTrackResult.Success == false) { return(result); } result.Point = campaign.ShareAppMessagePoint; return(result); }
public ShareResult ShareAppMessage(Guid pageId, Guid?memberId, string openId) { ShareResult result = new ShareResult(); AdvancedArticleEntity advancedArticle = GetAdvancedArticle(pageId); if (advancedArticle == null) { return(result); } #region 判断有没有分享过 ShareLogEntity log = _shareManager.GetShareLog(pageId, openId); if (log == null) { log = new ShareLogEntity(); log.Member = memberId; log.OpenId = openId; log.PageId = pageId; log.ShareAppMessage = true; _shareManager.Create(log); } else { if (log.ShareAppMessage && log.Member.HasValue) { return(result); } if (log.ShareAppMessage && memberId.HasValue == false) { return(result); } log.Member = memberId; log.ShareAppMessage = true; _shareManager.Update(log); } #endregion if (advancedArticle.ShareAppMessagePoint <= 0) { return(result); } if (memberId.HasValue) { PointTrackArgs args = new PointTrackArgs(); args.DomainId = advancedArticle.Domain; args.MemberId = memberId.Value; args.Quantity = advancedArticle.ShareAppMessagePoint; args.Type = MemberPointTrackType.Share; args.TagName = advancedArticle.Title; args.TagId = advancedArticle.Id; PointTrackResult pointTrackResult = _memberManager.PointTrack(args); if (pointTrackResult.Success == false) { return(result); } result.Point = advancedArticle.ShareAppMessagePoint; } return(result); }