Exemplo n.º 1
0
        /// <summary>
        /// 短信提醒
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        private string SmsRemind(HttpContext context)
        {
            string promotionActivityId = context.Request["promotion_activity_id"];//限时特卖活动ID
            string phone      = context.Request["phone"];
            string smsContent = context.Request["sms_content"];
            string sendTime   = context.Request["send_time"];

            if (!bllMall.IsLogin)
            {
                resp.errcode = 1;
                resp.errmsg  = "请先登录";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            var currentUserInfo = bllMall.GetCurrentUserInfo();

            if (string.IsNullOrEmpty(promotionActivityId))
            {
                resp.errcode = 1;
                resp.errmsg  = "promotion_activity_id 参数不能为空";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            if (string.IsNullOrEmpty(phone))
            {
                resp.errcode = 1;
                resp.errmsg  = "phone 参数不能为空";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            if ((!phone.StartsWith("1")) || (!phone.Length.Equals(11)))
            {
                resp.errcode = 2;
                resp.errmsg  = "手机号格式不正确";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            if (string.IsNullOrEmpty(smsContent))
            {
                resp.errcode = 1;
                resp.errmsg  = "sms_content 不能为空";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            if (string.IsNullOrEmpty(sendTime))
            {
                resp.errcode = 1;
                resp.errmsg  = "send_time 参数不能为空";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            //检查是否已经有记录提醒
            if (IsRemind(promotionActivityId, currentUserInfo.UserID) > 0)
            {
                resp.errcode = 1;
                resp.errmsg  = "已经添加提醒";
                return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
            }
            bool   isSuccess    = false;
            string msg          = "";
            string smsSignature = bllSms.GetWebsiteInfoModelFromDataBase().SmsSignature;//短信签名

            if (string.IsNullOrEmpty(smsSignature))
            {
                smsSignature = "至云";
            }
            bllSms.SendSmsMisson(phone, smsContent, sendTime, smsSignature, out isSuccess, out msg);
            if (isSuccess)
            {
                CommRelationInfo model = new CommRelationInfo();
                model.MainId       = promotionActivityId;
                model.RelationId   = currentUserInfo.UserID;
                model.RelationTime = DateTime.Now;
                model.RelationType = "PromotionSmsRemind";
                if (bllMall.Add(model))
                {
                    resp.errcode = 0;
                    resp.errmsg  = "ok";
                }
                else
                {
                    resp.errcode = 4;
                    resp.errmsg  = string.Format("提交提醒失败", msg);
                }
            }
            else
            {
                resp.errcode = 4;
                resp.errmsg  = string.Format("提交失败,错误码{0}", msg);
            }
            return(ZentCloud.Common.JSONHelper.ObjectToJson(resp));
        }
Exemplo n.º 2
0
        public void ProcessRequest(HttpContext context)
        {
            string name   = context.Request["name"];
            string idCard = context.Request["id_card"];

            if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(idCard))
            {
                apiResp.msg  = "姓名和身份证为必填信息";
                apiResp.code = (int)BLLJIMP.Enums.APIErrCode.IsNotFound;
                bllUser.ContextResponse(context, apiResp);
                return;
            }
            CommRelationInfo commRelation = bLLCommRelation.GetRelationInfo(BLLJIMP.Enums.CommRelationType.NameCertification, name, idCard);

            if (commRelation != null)
            {
                apiResp.status = true;
                apiResp.msg    = "认证通过";
                bllUser.ContextResponse(context, apiResp);
                return;
            }
            Request model = new Request();

            model.header            = new Header();
            model.body              = new Body();
            model.header.version    = "1.0";
            model.header.product    = "B10002";
            model.header.merchant   = "201512179102";
            model.header.outOrderId = Math.Ceiling(bllUser.GetTimeStamp(DateTime.Now)).ToString();
            model.body.name_card    = name;
            model.body.id_card      = idCard;
            var sign1 = new
            {
                body   = model.body,
                header = model.header
            };

            string singStr = ZentCloud.Common.JSONHelper.ObjectToJson(sign1);

            string key = "sFpCmChE9VLpVcSrefDh";

            string sign = Payment.Alipay.AlipayMD5.Sign(singStr, key, "utf-8").ToLower();

            var postData = new
            {
                request = model,
                sign    = sign
            };

            string strPostdata = ZentCloud.Common.JSONHelper.ObjectToJson(postData);

            string sResult = string.Empty;

            string sError = string.Empty;

            string sResponseStatusCode = string.Empty;

            string sResponseStatusDescription = string.Empty;

            HttpWebResponse oHttpWebResponse = null;
            HttpWebRequest  oHttpWebRequest  = null;
            Stream          oStream          = null;
            StreamReader    oStreamReader    = null;

            byte[] bytes = Encoding.UTF8.GetBytes(strPostdata);
            try
            {
                oHttpWebRequest               = (HttpWebRequest)WebRequest.Create("https://api.udcredit.com/api/credit/v1/get_nauth");
                oHttpWebRequest.Method        = "POST";
                oHttpWebRequest.ContentType   = "application/json";
                oHttpWebRequest.ContentLength = bytes.Length;

                oHttpWebRequest.Timeout = 1000 * 5;

                oStream = oHttpWebRequest.GetRequestStream();
                oStream.Write(bytes, 0, bytes.Length);
                oStream.Close();

                oHttpWebResponse           = (HttpWebResponse)oHttpWebRequest.GetResponse();
                oStreamReader              = new StreamReader(oHttpWebResponse.GetResponseStream());
                sResponseStatusCode        = oHttpWebResponse.StatusCode.ToString();
                sResponseStatusDescription = oHttpWebResponse.StatusDescription;

                sResult = oStreamReader.ReadToEnd();
                ResponseModel resultModel = ZentCloud.Common.JSONHelper.JsonToModel <ResponseModel>(sResult);

                if (resultModel.response.header.retCode == "0000")
                {
                    if (resultModel.response.body.status == "1")
                    {
                        bLLCommRelation.AddCommRelation(BLLJIMP.Enums.CommRelationType.NameCertification, name, idCard);
                        apiResp.status = true;
                        apiResp.msg    = "认证通过";
                    }
                    else if (resultModel.response.body.status == "2")
                    {
                        apiResp.status = false;
                        apiResp.msg    = "认证不通过";
                    }
                    else
                    {
                        apiResp.status = false;
                        apiResp.msg    = "查不到";
                    }
                }
                else
                {
                    apiResp.status = false;
                    apiResp.msg    = resultModel.response.header.retMsg;
                }
                bllUser.ContextResponse(context, apiResp);
            }
            catch (Exception ex)
            {
                apiResp.msg  = ex.ToString();
                apiResp.code = (int)BLLJIMP.Enums.APIErrCode.OperateFail;
                bllUser.ContextResponse(context, apiResp);
            }
            finally
            {
                oStream = null;
            }
        }