Example #1
0
        static void Main(string[] args)
        {
            MemberCardActivateReq req = new MemberCardActivateReq()
            {
                // 手机号作为会员卡号
                MembershipNumber = "15210470906",
                Code             = "819991369998",
                CardID           = "pp8Cv1YDI4ID5yIL4IC6_bhWEq4o",

                // 初始积分
                //InitCustomFieldValue1 = "0",
                // 初始等级
                // 铜牌、银牌、黄金、铂金、钻石、至尊
                InitCustomFieldValue2 = "查看",
                // 优惠券
                InitCustomFieldValue3 = "查看"
            };
            string requestBody = JsonConvert.SerializeObject(req);

            Console.WriteLine(requestBody);

            Console.ReadLine();
        }
Example #2
0
        public string Activate(string authorizerAppID, MemberCardActivateModel model)
        {
            try
            {
                // 验证参数

                AuthorizationInfoModel authorizationInfoModel = accessTokenDAL.Get(authorizerAppID);
                string authorizerAccessToken = authorizationInfoModel.AuthorizerAccessToken;
                LogHelper.Info("6.1 接口激活 authorizerAccessToken", authorizerAccessToken);

                // Code解码
                string code = string.Empty;
                if (!DecryptCode(authorizerAccessToken, model.EncryptCode, out code))
                {
                    return(JsonConvert.SerializeObject(new RESTfulModel()
                    {
                        Code = (int)CodeEnum.Code解码失败, Msg = string.Format(codeMsgDAL.GetByCode((int)CodeEnum.Code解码失败), model.EncryptCode)
                    }));
                }
                ;

                string url = "https://api.weixin.qq.com/card/membercard/activate?access_token=" + authorizerAccessToken;
                LogHelper.Info("6.1 接口激活 url", url);
                MemberCardActivateReq req = new MemberCardActivateReq()
                {
                    // 手机号作为会员卡号
                    MembershipNumber = model.Mobile,
                    Code             = code,
                    CardID           = model.CardID,
                    //InitBonus = 0,
                    //InitBonusRecord = "",
                    //InitBalance = 0,
                    //InitCustomFieldValue1 = "0",
                    // 优惠券
                    InitCustomFieldValue2 = "查看",
                    // 初始等级
                    InitCustomFieldValue3 = "查看"
                };
                string requestBody = JsonConvert.SerializeObject(req);
                LogHelper.Info("6.1 接口激活 requestBody", requestBody);
                string responseBody = HttpHelper.Post(url, requestBody);
                LogHelper.Info("6.1 接口激活 responseBody", responseBody);
                MemberCardActivateResp resp = JsonConvert.DeserializeObject <MemberCardActivateResp>(responseBody);
                if (resp.ErrCode == 0)
                {
                    DateTime dt = DateTime.Now;
                    // 保存 AuthorizerAppID、CardID、Code之间的关系
                    memberInfoDAL.Insert(authorizerAppID, model.OpenID, model.CardID, code, model.Mobile, model.Mobile, model.RealName, model.Gender, model.Birthday, dt);

                    return(JsonConvert.SerializeObject(new RESTfulModel()
                    {
                        Code = (int)CodeEnum.成功, Msg = string.Format(codeMsgDAL.GetByCode((int)CodeEnum.成功), "激活成功")
                    }));
                }
                else
                {
                    string msg = "errcode: " + resp.ErrCode + ", errmsg: " + resp.ErrMsg;
                    return(JsonConvert.SerializeObject(new RESTfulModel()
                    {
                        Code = (int)CodeEnum.失败, Msg = string.Format(codeMsgDAL.GetByCode((int)CodeEnum.失败), msg)
                    }));
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                return(JsonConvert.SerializeObject(new RESTfulModel()
                {
                    Code = (int)CodeEnum.系统异常, Msg = codeMsgDAL.GetByCode((int)CodeEnum.系统异常)
                }));
            }
        }