Beispiel #1
0
        public async Task <IActionResult> GenerateQrCode([FromQuery] int amount)
        {
            int    id     = Int32.Parse(User.Claims.First(c => c.Type == "UserId").Value);
            string status = await PayXUtils.PaymentManager.GenerateQr(amount, id);

            QrResponse qrResponse = JsonConvert.DeserializeObject <QrResponse>(status);

            return(Ok(qrResponse.Content.Qr_text));
        }
Beispiel #2
0
        public void QrResponse()
        {
            var obj = new QrResponse
            {
                Amount           = 76,
                AmountChangeable = true,
                Beneficiary      = "Lorum_401",
                CreatedAt        = DateTime.Now,
                Description      = "Lorum_579",
                Expiration       = DateTime.Now,
                OneOff           = false,
                Payments         = null,
                PurchaseId       = "Lorum_700",
                QrCodeUrl        = "Lorum_683",
                QrId             = "Lorum_691",
                Size             = 68,
                Status           = "Lorum_589",
                UpdatedAt        = DateTime.Now
            };
            var deserialized = ConversionTest(obj);

            Assert.IsNotNull(deserialized);
            Assert.AreEqual(obj.AmountChangeable, deserialized.AmountChangeable);
            Assert.AreEqual(obj.Beneficiary, deserialized.Beneficiary);
            // Check only date and time up to seconds.. Json.NET does not save milliseconds.
            Assert.AreEqual(obj.CreatedAt.HasValue, deserialized.CreatedAt.HasValue);
            if (obj.CreatedAt.HasValue && deserialized.CreatedAt.HasValue)
            {
                Assert.AreEqual(
                    new DateTime(obj.CreatedAt.Value.Year, obj.CreatedAt.Value.Month, obj.CreatedAt.Value.Day, obj.CreatedAt.Value.Hour, obj.CreatedAt.Value.Minute, obj.CreatedAt.Value.Second),
                    new DateTime(deserialized.CreatedAt.Value.Year, deserialized.CreatedAt.Value.Month, deserialized.CreatedAt.Value.Day, deserialized.CreatedAt.Value.Hour, deserialized.CreatedAt.Value.Minute, deserialized.CreatedAt.Value.Second));
            }
            Assert.AreEqual(obj.Description, deserialized.Description);
            // Check only date and time up to seconds.. Json.NET does not save milliseconds.
            Assert.AreEqual(obj.Expiration.HasValue, deserialized.Expiration.HasValue);
            if (obj.Expiration.HasValue && deserialized.Expiration.HasValue)
            {
                Assert.AreEqual(
                    new DateTime(obj.Expiration.Value.Year, obj.Expiration.Value.Month, obj.Expiration.Value.Day, obj.Expiration.Value.Hour, obj.Expiration.Value.Minute, obj.Expiration.Value.Second),
                    new DateTime(deserialized.Expiration.Value.Year, deserialized.Expiration.Value.Month, deserialized.Expiration.Value.Day, deserialized.Expiration.Value.Hour, deserialized.Expiration.Value.Minute, deserialized.Expiration.Value.Second));
            }
            Assert.AreEqual(obj.OneOff, deserialized.OneOff);
            Assert.AreEqual(obj.PurchaseId, deserialized.PurchaseId);
            Assert.AreEqual(obj.QrCodeUrl, deserialized.QrCodeUrl);
            Assert.AreEqual(obj.QrId, deserialized.QrId);
            Assert.AreEqual(obj.Size, deserialized.Size);
            Assert.AreEqual(obj.Status, deserialized.Status);
            // Check only date and time up to seconds.. Json.NET does not save milliseconds.
            Assert.AreEqual(obj.UpdatedAt.HasValue, deserialized.UpdatedAt.HasValue);
            if (obj.UpdatedAt.HasValue && deserialized.UpdatedAt.HasValue)
            {
                Assert.AreEqual(
                    new DateTime(obj.UpdatedAt.Value.Year, obj.UpdatedAt.Value.Month, obj.UpdatedAt.Value.Day, obj.UpdatedAt.Value.Hour, obj.UpdatedAt.Value.Minute, obj.UpdatedAt.Value.Second),
                    new DateTime(deserialized.UpdatedAt.Value.Year, deserialized.UpdatedAt.Value.Month, deserialized.UpdatedAt.Value.Day, deserialized.UpdatedAt.Value.Hour, deserialized.UpdatedAt.Value.Minute, deserialized.UpdatedAt.Value.Second));
            }
        }