Exemplo n.º 1
0
        public DataContract.Macro.GetMacroProductDetailsResponse MacroProductDetails(DataContract.Macro.GetMacroProductDetailsRequest request)
        {
            if (String.IsNullOrEmpty(request.Platform))
            {
                request.Platform = ConfigurationManager.AppSettings["DefaultPlatform"];
            }

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

            return(response);
        }
Exemplo n.º 2
0
        public DataContract.Macro.GetMacroProductDetailsResponse GetMacroProductDetails(DataContract.Macro.GetMacroProductDetailsRequest request)
        {
            LogRequest(request);

            var response  = new DataContract.Macro.GetMacroProductDetailsResponse();
            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 GetMacroProductDetailsResponse
                    {
                        ResponseCode    = 99,
                        ResponseMessage = "Error: El usuario no tiene productos asignados en la plataforma.",
                        TransactionID   = 0
                    };
                }
                else
                {
                    var dm = new Movilway.API.Data.MacroProduct.MacroProductDataManager();
                    response = dm.GetMacroProductDetails(platformId, countryId, request.MacroProductId, productList.ProductList, request.DeviceType);

                    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);
        }