コード例 #1
0
        public ActionResult GetMemberQRCodeItem()
        {
            string campaignId = Request.QueryString["campaignId"];

            if (String.IsNullOrEmpty(campaignId))
            {
                return(RespondResult(false, "参数无效。"));
            }

            Campaign_MemberQRCodeItemEntity result =
                _campaignManager.MemberQRCode.GetMemberQRCodeItem(Guid.Parse(campaignId), MemberContext.Member.Id);

            if (result == null)
            {
                //生成一个
                NormalResult <Campaign_MemberQRCodeItemEntity> normalResult = _campaignManager.MemberQRCode.CreateMemberQRCodeItem(
                    DomainContext, Guid.Parse(campaignId), MemberContext.Member.Id);

                if (normalResult.Success == false)
                {
                    return(RespondResult(false, normalResult.Message));
                }
                result = normalResult.Data;
            }

            if (result == null)
            {
                return(RespondResult(false, "生成二维码失败。"));
            }

            return(RespondDataResult(result));
        }
コード例 #2
0
        public NormalResult <Campaign_MemberQRCodeItemEntity> CreateMemberQRCodeItem(DomainContext domainContext, Guid campaignId, Guid memberId)
        {
            NormalResult <Campaign_MemberQRCodeItemEntity> result = new NormalResult <Campaign_MemberQRCodeItemEntity>();

            //判断有没有超过最大参与人数
            //if (MemberQRCodeIsFullParticipant(campaignId))
            //{
            //    result.Success = false;
            //    result.Message = "该活动已达最大允许参与人数。";
            //    return result;
            //}

            Campaign_MemberQRCodeEntity campaignMemberQRCode = GetMemberQRCode(campaignId);

            if (campaignMemberQRCode == null)
            {
                result.Success = false;
                result.Message = "指定的活动不存在。";
                return(result);
            }

            string landingUrl = String.Format(_campaignManager.SettingsManager.GetClientAddress(domainContext) +
                                              "Campaign/MemberQRCodeLanding/{0}?campaignId={1}&memberId={2}",
                                              campaignMemberQRCode.Domain, campaignId, memberId);

            GetCampaign_MemberQRCodeImageArgs args = new GetCampaign_MemberQRCodeImageArgs();

            args.BackgroundImageId = campaignMemberQRCode.BackgroundImageId;
            args.LandingUrl        = landingUrl;
            args.Domain            = campaignMemberQRCode.Domain;
            args.MemberId          = memberId;

            GetMemberQRCodeImageResult getMemberQRCodeImageResult = _campaignManager.FileService.GetMemberQRCodeImage(args);

            if (getMemberQRCodeImageResult.Success == false)
            {
                result.Success = false;
                result.Message = getMemberQRCodeImageResult.Message;
                return(result);
            }

            Campaign_MemberQRCodeItemEntity item = new Campaign_MemberQRCodeItemEntity();

            item.CampaignId = campaignId;
            item.CreateTime = DateTime.Now;
            item.Domain     = campaignMemberQRCode.Domain;
            item.Member     = memberId;
            item.QRCodeUrl  = _campaignManager.FileService.FileServiceUri + getMemberQRCodeImageResult.FileName;

            _campaignManager.DataBase.Insert(item);

            result.Success = true;
            result.Data    = item;
            return(result);
        }
コード例 #3
0
        public Campaign_MemberQRCodeItemEntity GetMemberQRCodeItem(Guid campaignId, Guid memberId)
        {
            Campaign_MemberQRCodeItemEntity campaign = new Campaign_MemberQRCodeItemEntity();

            campaign.CampaignId = campaignId;
            campaign.Member     = memberId;

            if (_campaignManager.DataBase.Fill <Campaign_MemberQRCodeItemEntity>(campaign))
            {
                return(campaign);
            }
            else
            {
                return(null);
            }
        }
        protected override string Handle(ReceivingXMLMessage_ClickEventMessage message, ClientDomainContext domainContext)
        {
            if (String.IsNullOrEmpty(message.EventKey))
            {
                return(String.Empty);
            }

            string[] keyArray = message.EventKey.Split(':');

            switch (keyArray[0])
            {
            case "MemberQRCode":


                Guid campaignId = Guid.Empty;
                if (Guid.TryParse(keyArray[1], out campaignId) == false)
                {
                    string replyMessage = GetReplyTextMessage(domainContext, message.FromUserName, "campaignId 参数无效:" + keyArray[1]);
                    return(replyMessage);
                }

                //  Campaign_MemberQRCodeEntity campaign_MemberQRCodeEntity = _campaignManager.GetMemberQRCode();
                MemberEntity memberEntity = _memberManager.GetMemberByOpenId(domainContext.Domain.Id, domainContext.AppId, message.FromUserName);
                Campaign_MemberQRCodeItemEntity memberQRCodeItem =
                    _campaignManager.MemberQRCode.GetMemberQRCodeItem(Guid.Parse(keyArray[0]), memberEntity.Id);
                if (memberQRCodeItem == null)
                {
                }
                break;

            default:
                break;
            }

            return(String.Empty);
        }