Example #1
0
        /// <summary>
        /// 订阅(关注)事件
        /// </summary>
        /// <returns></returns>
        public override IResponseMessageBase OnEvent_SubscribeRequest(RequestMessageEvent_Subscribe requestMessage)
        {
            string weixinAppId      = ConfigurationManager.AppSettings["WeixinAppId"];
            string weixinAppSecret  = ConfigurationManager.AppSettings["WeixinAppSecret"];
            var    sendInfoTemplate = ConfigurationManager.AppSettings["sendInfoTemplate"];

            var eventKey = requestMessage.EventKey.Replace("qrscene_", "");

            var responseMessage = this.CreateResponseMessage <ResponseMessageText>();

            var model = RecommendApp.Instance.GetByopenId(requestMessage.FromUserName);

            if (model != null)
            {
                //老用户
                responseMessage.Content = "您好!感谢关注千年文化传播官方微信";
            }
            else
            {
                var userinfo = WeiXinApp.Instance.GetUserInfo(weixinAppId, weixinAppSecret, requestMessage.FromUserName);
                if (userinfo != null)
                {
                    var recommend = new CrRecommend()
                    {
                        Openid        = requestMessage.FromUserName,
                        HeadImgUrl    = userinfo.headimgurl,
                        Nickname      = userinfo.nickname,
                        ReferrerSysNo = Convert.ToInt32(eventKey),
                        CreatedDate   = DateTime.Now
                    };

                    if (RecommendApp.Instance.Insert(recommend).Status)
                    {
                        var customer = CustomerApp.Instance.Get(Convert.ToInt32(eventKey));
                        if (customer != null)
                        {
                            WeiXinApp.Instance.SendMessage(new SendMessageRequest()
                            {
                                WeiXinAppId     = weixinAppId,
                                WeiXinAppSecret = weixinAppSecret,
                                OpenId          = customer.OpenId,
                                TemplateId      = sendInfoTemplate,
                                Data            = new
                                {
                                    //first = new { color = "#000000", value = "1000n消息信息" },
                                    keyword1 = new { color = "#000000", value = userinfo.nickname },
                                    keyword2 = new { color = "#000000", value = DateTime.Now.ToString("yyyy年MM月dd日") },
                                    remark   = new { color = "#000000", value = string.Format("{0}通过您的二维码关注了本公众号、成为您的粉丝", userinfo.nickname) }
                                },
                                Url = "#"
                            });
                        }
                    }
                    responseMessage.Content = "您好!感谢关注千年文化传播官方微信";
                }
            }

            return(responseMessage);
        }
Example #2
0
        /// <summary>
        /// 插入
        /// </summary>
        /// <param name="model">数据模型</param>
        public int Insert(CrRecommend model)
        {
            var result = DBContext.Insert <CrRecommend>("agent_crrecommend", model)
                         .AutoMap(x => x.SysNo)
                         .ExecuteReturnLastId <int>("sysNo");

            return(result);
        }
Example #3
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="model">数据模型</param>
        public int Update(CrRecommend model)
        {
            var rowsAffected = DBContext.Update <CrRecommend>("agent_crrecommend", model)
                               .AutoMap(x => x.SysNo)
                               .Where(x => x.SysNo)
                               .Execute();

            return(rowsAffected);
        }
Example #4
0
        /// <summary>
        /// 新增数据
        /// </summary>
        /// <param name="model">实体</param>
        /// <returns>系统编号</returns>
        public JResult <int> Insert(CrRecommend model)
        {
            var result = new JResult <int>();

            try
            {
                model.CreatedDate = DateTime.Now;
                var row = Using <ICrRecommend>().Insert(model);

                if (row <= 0)
                {
                    throw new Exception("添加数据失败");
                }

                result.Status = true;
                result.Data   = row;
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
            }

            return(result);
        }