コード例 #1
0
        public GetSmsAccountResponse GetSmsAccount(SmsAccountRequest request, IEnumerable <KeyValuePair <string, string> > pairs)
        {
            var response = new GetSmsAccountResponse();
            //参数校验
            bx_agent agentModel    = _agentRepository.GetAgent(request.Agent);
            bx_agent curAgentModel = _agentRepository.GetAgent(request.CurAgent);

            if (agentModel == null || curAgentModel == null)
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }
            if (!ValidateReqest(pairs, agentModel.SecretKey, request.SecCode))
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }

            int messagePayType = curAgentModel.MessagePayType.HasValue ? curAgentModel.MessagePayType.Value : 0;
            //如果走顶级代理,则查顶级短信;否则,查当前短信信息
            var smsAcount = messagePayType == 0 ? _smsContentRepository.Find(request.Agent) : _smsContentRepository.Find(request.CurAgent);

            if (smsAcount != null)
            {
                response.Status     = HttpStatusCode.OK;
                response.SmsAccount = smsAcount;
            }
            else
            {
                response.ErrCode = -1;
                response.ErrMsg  = "没有此记录";
            }
            return(response);
        }
コード例 #2
0
        public GetSmsAccountResponse CreateAccount(CreateAccountRequest request, IEnumerable <KeyValuePair <string, string> > pairs)
        {
            var response = new GetSmsAccountResponse();
            //参数校验
            bx_agent agentModel = _agentRepository.GetAgent(request.Agent);

            if (agentModel == null)
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }
            if (!ValidateReqest(pairs, agentModel.SecretKey, request.SecCode))
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }
            //创建发短信的账号
            int smsAcountId = 0;

            smsAcountId = CreateAccount(request.CurAgent, request.Method, request.Agent);
            //如果返回来的Id是负数,则说明账号已存在,该账号的Id就是smsAcountId*(-1)
            if (smsAcountId < 0)
            {
                response.ErrCode = -2;
                response.ErrMsg  = "账号已存在,无法创建";
                return(response);
            }
            //返回来的Id是正数,说明创建账号成功。
            if (smsAcountId > 0)
            {
                response.Status     = HttpStatusCode.OK;
                response.SmsAccount = _smsContentRepository.Find(request.CurAgent);
            }
            else
            {
                response.ErrCode = -1;
                response.ErrMsg  = "创建失败,微信端无法创建短信账号";
            }
            return(response);
        }