コード例 #1
0
 public InvoiceClientGetDocumentXmlAsyncTests()
 {
     _invoiceResourceOk = File.ReadAllText(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.json");
     //_pdfByteToTest = File.ReadAllBytes(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.xml");
     _xmlToTest       = File.ReadAllText(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.xml");
     _invoiceToAssert = _invoiceResourceOk.JsonToObject <InvoiceResource>();
 }
コード例 #2
0
        public void SetUp()
        {
            this.resource = new InvoiceResource
            {
                id    = 123,
                lines = new List <InvoiceLineResource>
                {
                    new InvoiceLineResource
                    {
                        quantity         = 2,
                        forDemonstration = true,
                        links            = new List <LinkResource>
                        {
                            new LinkResource("productUri", "/products/sales-parts/123"),
                            new LinkResource("sales-customer", "/sales/customers/808")
                        }
                    },
                    new InvoiceLineResource
                    {
                        quantity         = 1,
                        forDemonstration = true,
                        links            = new List <LinkResource>
                        {
                            new LinkResource("productUri", "/products/sales-parts/456"),
                            new LinkResource("sales-customer", "/sales/customers/808")
                        }
                    }
                }
            };
            this.retailerDemList = new RetailerDemList(444, null);
            this.RetailerProxy.GetRetailerId("/sales/customers/808").Returns((int?)null);

            this.Sut.CaptureDemRootProductsFromInvoice(this.resource);
        }
コード例 #3
0
        public Client(Credentials credentials)
        {
            if (credentials == null)
            {
                throw new ArgumentNullException("credentials");
            }
            _requester = new OAuthRequest(credentials);

            Company             = new CompanyResource(_requester);
            CompanySubscription = new CompanySubscriptionResource(_requester);
            User            = new UserResource(_requester);
            Contact         = new ContactResource(_requester);
            Product         = new ProductResource(_requester);
            ProductCategory = new ProductCategoryResource(_requester);
            ProductUnit     = new ProductUnitResource(_requester);
            //Dashboard = new DashboardResource(_requester);
            //Receipt = new ReceiptResource(_requester);
            Inventory   = new InventoryResource(_requester);
            BillingNote = new BillingNoteResource(_requester);
            Invoice     = new InvoiceResource(_requester);
            //PurchaseOrder = new PurchaseOrderResource(_requester);
            //Quotation = new QuotationResource(_requester);
            //Expense = new ExpenseResource(_requester);
            CreditNote     = new CreditNoteResource(_requester);
            DebitNote      = new DebitNoteResource(_requester);
            WithHoldingTax = new WithHoldingTaxResource(_requester);
        }
コード例 #4
0
        public IActionResult Post([FromBody] Invoice invoice)
        {
            _invoiceAccess.AddInvoice(invoice);
            var resource = new InvoiceResource(invoice);
            var response = new HALResponse(resource).AddSelfLink(Request);

            return(Ok(response));
        }
コード例 #5
0
        public static void ValidateInvoice(InvoiceResource expect, InvoiceResource actual)
        {
            Assert.NotNull(expect);
            Assert.NotNull(actual);
            Assert.Equal(expect.CityServiceCode, actual.CityServiceCode);
            Assert.Equal(expect.Description, actual.Description);
            Assert.Equal(expect.EconomicActivitieCode, actual.EconomicActivitieCode);
            Assert.Equal(expect.FederalServiceCode, actual.FederalServiceCode);
            Assert.Equal(expect.ServicesAmount, actual.ServicesAmount);

            ValidateBorrower(expect.Borrower, actual.Borrower);
        }
コード例 #6
0
        public void CaptureDemRootProductsFromInvoice(InvoiceResource invoiceResource)
        {
            this.log.Info($"Checking invoice {invoiceResource.id} for dem stock");
            var demLines = invoiceResource.lines.Where(a => a.forDemonstration).ToList();

            if (!demLines.Any())
            {
                return;
            }

            this.ProcessDemRootProducts(invoiceResource.id, demLines);
        }
コード例 #7
0
        public IActionResult Get(int id)
        {
            if (id.Equals(0) || _invoiceAccess.GetInvoice(id) == null)
            {
                return(BadRequest());
            }
            var resource = new InvoiceResource(_invoiceAccess.GetInvoice(id));
            var response = new HALResponse(resource).AddSelfLink(Request).AddLinks(
                new Link("address", "/api/Address/" + resource.AddressId + "", null, "GET"),
                new Link("bankaccount", "/api/BankAccount/" + resource.BankAccounts + "", null, "GET"),
                new Link("invoice", "/api/Invoice/", null, "GET"));

            return(Ok(response));
        }
コード例 #8
0
        private void OnReactivateUserSubscriptionResponse(KnetikRestResponse response)
        {
            if (!string.IsNullOrEmpty(response.Error))
            {
                throw new KnetikException("Error calling ReactivateUserSubscription: " + response.Error);
            }

            ReactivateUserSubscriptionData = (InvoiceResource)KnetikClient.Deserialize(response.Content, typeof(InvoiceResource), response.Headers);
            KnetikLogger.LogResponse(mReactivateUserSubscriptionStartTime, "ReactivateUserSubscription", string.Format("Response received successfully:\n{0}", ReactivateUserSubscriptionData));

            if (ReactivateUserSubscriptionComplete != null)
            {
                ReactivateUserSubscriptionComplete(response.ResponseCode, ReactivateUserSubscriptionData);
            }
        }
コード例 #9
0
        public async Task <IActionResult> AddInvoice([FromBody] InvoiceResource saveInvoice)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var Invoice = mapper.Map <InvoiceResource, Invoice>(saveInvoice);

            InvoiceRepository.AddInvoice(Invoice);
            await unitOfWork.CompleteAsync();

            var InvoiceResource = mapper.Map <Invoice, InvoiceResource>(Invoice);

            return(Ok(InvoiceResource));
        }
コード例 #10
0
        public IActionResult Get()
        {
            var invoices = _invoiceAccess.GetInvoices();
            var response = new List <HALResponse>();

            foreach (var invoice in invoices)
            {
                var resource = new InvoiceResource(invoice);
                response.Add(new HALResponse(resource).AddLinks(
                                 new Link("invoice", "/api/Invoice/" + invoice.InvoiceId + "", null, "GET"),
                                 new Link("address", "/api/Address/" + resource.AddressId + "", null, "GET"),
                                 new Link("bankaccount", "/api/BankAccount/" + resource.BankAccounts + "", null, "GET"),
                                 new Link("create", "/api/Address/", null, "POST")
                                 ));
            }

            return(Ok(response));
        }
コード例 #11
0
        public async Task <IActionResult> UpdateInvoice(int id, [FromBody] InvoiceResource saveInvoice)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var Invoice = await InvoiceRepository.GetInvoiceAsync(id);

            if (Invoice == null)
            {
                return(NotFound());
            }
            mapper.Map <InvoiceResource, Invoice>(saveInvoice, Invoice);

            await unitOfWork.CompleteAsync();

            Invoice = await InvoiceRepository.GetInvoiceAsync(Invoice.Id);

            return(Ok(mapper.Map <Invoice, InvoiceResource>(Invoice)));
        }
コード例 #12
0
        public void SetUp()
        {
            this.resource = new InvoiceResource
            {
                id    = 123,
                lines = new List <InvoiceLineResource>
                {
                    new InvoiceLineResource
                    {
                        quantity         = 2,
                        forDemonstration = false,
                        links            = new List <LinkResource>
                        {
                            new LinkResource("productUri", "/products/sales-parts/123")
                        }
                    },
                    new InvoiceLineResource
                    {
                        quantity         = 1,
                        forDemonstration = false,
                        links            = new List <LinkResource>
                        {
                            new LinkResource("productUri", "/products/sales-parts/456")
                        }
                    }
                },
                links = new List <LinkResource>
                {
                    new LinkResource("sales-customer", "/sales/customers/808")
                }
            };
            this.retailerDemList = new RetailerDemList(444, null);
            this.RetailerProxy.GetRetailerId("/sales/customers/808").Returns(444);
            this.RetailerDemListRepository.GetByRetailerId(444).Returns(this.retailerDemList);
            this.ProductsProxy.GetRootProductUri("/products/sales-parts/123")
            .Returns("/products/root-products/888");
            this.ProductsProxy.GetRootProductUri("/products/sales-parts/456")
            .Returns("/products/root-products/999");

            this.Sut.CaptureDemRootProductsFromInvoice(this.resource);
        }
コード例 #13
0
        public void SetUp()
        {
            this.resource = new InvoiceResource
            {
                id = 123
            };

            var json = JsonConvert.SerializeObject(
                this.resource,
                new JsonSerializerSettings
            {
                ContractResolver = new CamelCasePropertyNamesContractResolver()
            });

            var body = Encoding.UTF8.GetBytes(json);

            var message = Substitute.For <IReceivedMessage>();

            message.Body.Returns(body);
            this.result = this.Sut.Execute(message);
        }
コード例 #14
0
 public InvoiceClientSendEmailAsyncTests()
 {
     _invoiceResourceOk = File.ReadAllText(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.json");
     _invoiceToAssert   = _invoiceResourceOk.JsonToObject <InvoiceResource>();
 }
 public InvoiceClientGetDocumentPdfAsyncTests()
 {
     _invoiceResourceOk = File.ReadAllText(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.json");
     _pdfByteToTest     = File.ReadAllBytes(@"..\..\..\..\UnitTests\FileToTest\pdf-file-to-test.pdf");
     _invoiceToAssert   = _invoiceResourceOk.JsonToObject <InvoiceResource>();
 }
コード例 #16
0
 public InvoiceClientPostAsyncTests()
 {
     _invoiceResourceOk = File.ReadAllText(@"..\..\..\..\UnitTests\FileToTest\invoiceResource-Example.json");
     _invoiceToAssert   = _invoiceResourceOk.JsonToObject <InvoiceResource>();
     _invoiceToRequest  = GenerateObjectToTest.Invoice();
 }
コード例 #17
0
 public InvoiceResource CreateInvoice(InvoiceResource resource)
 {
     return(resource);
 }