コード例 #1
0
        public async Task <InvoiceResponseModel> Create(InvoiceRequestModel invoiceRequest)
        {
            var invoice = InvoiceMap.InvoiceRequestToInvoice(invoiceRequest);

            if (!invoice.IsValid())
            {
                AddErrors(invoice.GetErrors());
            }

            HandlerErrors();

            var company = await _companyRepository.GetById(invoice.CompanyId);

            if (company == null)
            {
                AddError("Company not found");
            }

            HandlerErrors();

            await _invoiceRepository.Create(invoice);

            company.CalculateReliability();

            await _invoiceRepository.Save();

            return(InvoiceMap.InvoiceToInvoiceResponse(invoice));
        }
コード例 #2
0
        // GET: Invoices
        public ActionResult Index()
        {
            var invoicesVM = new List <Invoice>();

            foreach (var invoice in invoicesRepositories.GetAll())
            {
                var invoiceVM = InvoiceMap.InvoiceToInvoiceVM(invoice);
            }

            return(View(invoicesVM));
        }
コード例 #3
0
        public async Task <List <InvoiceResponseModel> > GetCompanyInvoices(int companyId)
        {
            if (companyId <= 0)
            {
                AddError("The company id is Invalid");
            }

            var invoices = await _invoiceRepository.GetCompanyInvoices(companyId);

            return(invoices.Select(x => InvoiceMap.InvoiceToInvoiceResponse(x)).ToList());
        }
コード例 #4
0
        public async Task ShouldGetInvoiceById()
        {
            var Invoice = new Invoice(1);

            var expectedInvoice = InvoiceMap.InvoiceToInvoiceResponse(Invoice);

            _invoiceRepository.GetById(1).Returns(Invoice);

            var response = await _invoiceService.GetById(1);

            response.Should().BeEquivalentTo(expectedInvoice);
        }
コード例 #5
0
        public ActionResult Edit([Bind(Include = "InvoiceId,Number,PartnerId,ProductId,Quantity,Price,Date,Payment,Transaction")] InvoiceVM invoiceVM)
        {
            var invoice = InvoiceMap.InvoiceVMToInvoice(invoiceVM);

            if (ModelState.IsValid)
            {
                invoicesRepositories.Edit(invoice);
                return(RedirectToAction("Index"));
            }
            ViewBag.PartnerId = new SelectList(db.Partners, "PartnerId", "Name", invoice.PartnerId);
            ViewBag.ProductId = new SelectList(db.Products, "ProductId", "Name", invoice.ProductId);
            return(View(invoice));
        }
コード例 #6
0
        // GET: Invoices/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Invoice invoice = invoicesRepositories.GetById(id.Value);

            if (invoice == null)
            {
                return(HttpNotFound());
            }

            var invoiceVM = InvoiceMap.InvoiceToInvoiceVM(invoice);

            return(View(invoiceVM));
        }
コード例 #7
0
        // GET: Invoices/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Invoice invoice = invoicesRepositories.GetById(id.Value);

            if (invoice == null)
            {
                return(HttpNotFound());
            }
            ViewBag.PartnerId = new SelectList(db.Partners, "PartnerId", "Name", invoice.PartnerId);
            ViewBag.ProductId = new SelectList(db.Products, "ProductId", "Name", invoice.ProductId);

            var invoiceVM = InvoiceMap.InvoiceToInvoiceVM(invoice);

            return(View(invoiceVM));
        }
コード例 #8
0
        public async Task <InvoiceResponseModel> GetById(int id)
        {
            if (id <= 0)
            {
                AddError("Id invalid");
            }

            HandlerErrors();

            var invoice = await _invoiceRepository.GetById(id);

            if (invoice == null)
            {
                AddError("Invoice not found");
            }

            HandlerErrors();

            return(InvoiceMap.InvoiceToInvoiceResponse(invoice));
        }
コード例 #9
0
        public async Task GetCompanyInvoices()
        {
            var InvoicesOfCompanyModels = new List <InvoiceResponseModel>();
            var InvoicesOfCompany       = new List <Invoice>();

            var InvoiceOfCompany1 = new Invoice(1);

            var InvoiceResponseOfCompany1 = InvoiceMap.InvoiceToInvoiceResponse(InvoiceOfCompany1);

            for (int i = 0; i < 5; i++)
            {
                InvoicesOfCompanyModels.Add(InvoiceResponseOfCompany1);
                InvoicesOfCompany.Add(InvoiceOfCompany1);
            }

            _invoiceRepository.GetCompanyInvoices(1).Returns(InvoicesOfCompany);

            var response = await _invoiceService.GetCompanyInvoices(1);

            response.Should().BeEquivalentTo(InvoicesOfCompanyModels);
        }
コード例 #10
0
        /// <summary>
        /// Saves the state of to view.
        /// </summary>
        /// <param name="item">The item.</param>
        private void SaveToViewState(GridEditableItem item)
        {
            var shipmentInvoice = new InvoiceMap();

            shipmentInvoice.ID = ((DictionaryOnDemandComboBox)item.FindControl("dcbInvoices")).SelectedId;

            var invoice = _dataManager.Invoice.SelectById(shipmentInvoice.ID);

            shipmentInvoice.CreatedAt     = invoice.CreatedAt;
            shipmentInvoice.InvoiceTypeID = invoice.InvoiceTypeID;
            shipmentInvoice.Note          = invoice.Note;
            shipmentInvoice.Number        = invoice.Number;

            if (ShipmentInvoicesList.SingleOrDefault(o => o.ID == shipmentInvoice.ID) == null)
            {
                ShipmentInvoicesList.Add(shipmentInvoice);
            }

            if (ShipmentInvoicesChanged != null)
            {
                ShipmentInvoicesChanged(this, new EventArgs());
            }
        }