Esempio n. 1
0
        public GetFavoriteAmountsResponse GetFavoriteAmounts(GetFavoriteAmountsRequest request)
        {
            //var rand = new Random();
            //var response = new GetFavoriteAmountsResponse();
            //
            //response.ResponseCode = 0;
            //response.ResponseMessage = "Exito";
            //response.TransactionID = rand.Next(1000000, 9999999);
            //response.FavoriteAmounts = new List<FavoriteAmount>();
            //
            //for (int i = 0; i < rand.Next(3,8); i++)
            //{
            //    var amounts = new FavoriteAmount() { Amounts = new List<decimal>(), MacroProductId = i+1000 };
            //
            //    amounts.Amounts.Add(5000m);
            //    amounts.Amounts.Add(3000m);
            //    amounts.Amounts.Add(1000m);
            //    amounts.Amounts.Add(25000m);
            //    amounts.Amounts.Add(15000m);
            //    amounts.Amounts.Add(10000m);
            //
            //    response.FavoriteAmounts.Add(amounts);
            //}
            //
            //return response;

            if (String.IsNullOrEmpty(request.Platform))
            {
                request.Platform = ConfigurationManager.AppSettings["DefaultPlatform"];
            }

            var response = new MacroProductProvider().GetFavoriteAmounts(request);

            return(response);
        }
Esempio n. 2
0
        internal GetFavoriteAmountsResponse GetFavoriteAmounts(GetFavoriteAmountsRequest request)
        {
            LogRequest(request);

            var response = new GetFavoriteAmountsResponse();

            var sessionId = GetSessionId(request, out errorMessage);

            if (errorMessage != ErrorMessagesMnemonics.None)
            {
                response.ResponseCode    = (int)errorMessage;
                response.ResponseMessage = errorMessage.ToDescription();
                return(response);
            }

            try
            {
                var platformId = Convert.ToInt32(request.Platform);                              //1
                var countryId  = Convert.ToInt32(ConfigurationManager.AppSettings["CountryId"]); //10

                //Platform products.
                var productList = new ServiceExecutionDelegator <GetProductListResponseBody, GetProductListRequestBody>().
                                  ResolveRequest(new GetProductListRequestBody()
                {
                    AuthenticationData = new AuthenticationData()
                    {
                        Username  = request.AuthenticationData.Username,
                        Password  = request.AuthenticationData.Password,
                        SessionID = sessionId
                    },
                    Agent      = request.Agent,
                    DeviceType = request.DeviceType
                }, request.Platform, ApiServiceName.GetProductList);

                if (productList.ProductList == null)
                {
                    response = new GetFavoriteAmountsResponse()
                    {
                        ResponseCode    = 99,
                        ResponseMessage = "Error: El usuario no tiene productos asignados en la plataforma.",
                        TransactionID   = 0
                    };
                }
                else
                {
                    var dm = new MacroProductDataManager();
                    response.FavoriteAmounts = dm.GetFavoriteAmounts(countryId);
                    response.ResponseCode    = 0;
                    response.ResponseMessage = "Exito.";
                    response.TransactionID   = 0;
                }
            }
            catch (Exception e)
            {
                ProviderLogger.ExceptionLow(() => TagValue.New().Message("Exception trying to serve KINACU Operation").Exception(e));
            }

            LogResponse(response);

            return(response);
        }