コード例 #1
0
        public async Task <GetContinedPeriodResponse> GetContinuedPeriod(GetCityContinuedPeriodRequest request, IEnumerable <KeyValuePair <string, string> > pairs)
        {
            GetContinedPeriodResponse response = new GetContinedPeriodResponse();
            //根据经纪人获取手机号
            IBxAgent agentModel = GetAgentModelFactory(request.Agent);

            //logInfo.Info("获取到的经纪人信息:"+agentModel.ToJson());
            //参数校验
            if (!agentModel.AgentCanUse())
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }
            if (!agentModel.AgentCanQuote())
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }

            if (!ValidateReqest(pairs, agentModel.SecretKey, request.SecCode))
            {
                response.Status = HttpStatusCode.Forbidden;
                return(response);
            }
            try
            {
                var cacheKey = string.Format("continuedperiod_{0}", request.Agent);
                var cache    = CacheProvider.Get <List <bx_cityquoteday> >(cacheKey);
                if (cache == null)
                {
                    cache = _dayRepository.GetList(request.Agent);
                    CacheProvider.Set(cacheKey, cache, 600);
                    response.Items = cache;
                }
                else
                {
                    response.Items = cache;
                }
                response.Status = HttpStatusCode.OK;
            }
            catch (Exception ex)
            {
                response.Status = HttpStatusCode.ExpectationFailed;
                logError.Info("获取续保期列表请求发生异常:" + ex.Source + "\n" + ex.StackTrace + "\n" + ex.Message + "\n" + ex.InnerException);
            }
            return(response);
        }
コード例 #2
0
        public async Task <HttpResponseMessage> GetContinuedPeriods([FromUri] GetCityContinuedPeriodRequest request)
        {
            var viewModel = new ContinuedPeriodViewModel();

            viewModel.StatusMessage = "获取成功";
            if (!ModelState.IsValid)
            {
                viewModel.BusinessStatus = -10000;
                viewModel.StatusMessage  = "输入参数错误,请检查您输入的参数是否有空或者长度不符合要求等";

                if (request.ShowName == 0)
                {//不显示新增的城市名称对象
                    viewModel.ItemsAddCityName = null;
                    viewModel.Items            = new List <ContinedPeriod>();
                }
                else
                {//展示原有列表对象
                    viewModel.ItemsAddCityName = new List <ContinedPeriodNew>();
                    viewModel.Items            = null;
                }
                return(viewModel.ResponseToJson());
            }

            var response = await _cityService.GetContinuedPeriod(request, Request.GetQueryNameValuePairs());

            if (response.Status == HttpStatusCode.BadRequest || response.Status == HttpStatusCode.Forbidden)
            {
                viewModel.BusinessStatus = -10001;
                viewModel.StatusMessage  = "参数校验错误,请检查您的校验码";
                _logInfo.Info(viewModel.ResponseToJson());
                if (request.ShowName == 0)
                {//不显示新增的城市名称对象
                    viewModel.ItemsAddCityName = null;
                    viewModel.Items            = new List <ContinedPeriod>();
                }
                else
                {//展示原有列表对象
                    viewModel.ItemsAddCityName = new List <ContinedPeriodNew>();
                    viewModel.Items            = null;
                }
                return(viewModel.ResponseToJson());
            }
            if (response.Status == HttpStatusCode.ExpectationFailed)
            {
                viewModel.BusinessStatus = -10003;
                viewModel.StatusMessage  = "服务发生异常";
            }
            else
            {
                if (request.ShowName == 1)
                {//取新增城市名称对象
                    viewModel = response.Items.ConverToListAddCityName();
                }
                else
                {
                    viewModel = response.Items.ConverToList();
                }
                viewModel.BusinessStatus = 1;
            }

            if (request.ShowName == 0)
            {//不显示新增的城市名称对象
                viewModel.ItemsAddCityName = null;
            }
            else
            {//展示原有列表对象
                viewModel.Items            = null;
                viewModel.ItemsAddCityName = viewModel.ItemsAddCityName ?? new List <ContinedPeriodNew>();
            }

            return(viewModel.ResponseToJson());
        }