Exemple #1
0
 internal static GetTypesRequestDtoRoot CreateGetTypesRequestDtoRoot(PaySecupayGetTypes secupayGetTypes)
 {
     GetTypesRequestDtoRoot root = new GetTypesRequestDtoRoot
     {
         Data = new GetTypesRequestDtoData { ApiKey = secupayGetTypes.ApiKey }
     };
     return root;
 }
Exemple #2
0
        internal static GetTypesRequestDtoRoot CreateGetTypesRequestDtoRoot(PaySecupayGetTypes secupayGetTypes)
        {
            GetTypesRequestDtoRoot root = new GetTypesRequestDtoRoot
            {
                Data = new GetTypesRequestDtoData {
                    ApiKey = secupayGetTypes.ApiKey
                }
            };

            return(root);
        }
        /// <summary>
        ///     Führt Abfrage der vorhandenen Zahlungsmethoden durch.
        ///     Kommuniaktion erfolgt im JSON Format
        /// </summary>
        private void RunPaymentGetTypes(PaySecupayGetTypes secupayGetTypes)
        {
            // Die Initialisierung wird in ein Data Transport Objekte gewandelt, das als JSON seralisiert werden kann
            GetTypesRequestDtoRoot dto = TDtoFactory.CreateGetTypesRequestDtoRoot(secupayGetTypes);

            secupayGetTypes.ApiUrl  = string.Format("{0}/payment/gettypes", secupayGetTypes.ApiUrl);
            secupayGetTypes.JsonOut = dto.ToJsonString();

            // Anfrage vorab in DB speichern
            Context.SaveChanges();

            // Anfrage am Gateway synchron durchführen und Antwort speichern
            secupayGetTypes.JsonIn = RunWebRequest(secupayGetTypes.ApiUrl, secupayGetTypes.JsonOut);
            Context.SaveChanges();

            // Einzelne Wert in Objekt übernehmen
            var response = secupayGetTypes.JsonIn.FromJsonToObject <GetTypesResponseDtoRoot>();

            secupayGetTypes.ResponseStatus       = response.Status;
            secupayGetTypes.ResponsePaymentTypes = String.Join(";", response.Data);

            // Antwort in DB sichern
            Context.SaveChanges();
        }