Ejemplo n.º 1
0
        public IInvoice MergeWithInvoiceNumber(ref InvoiceView invoiceView)
        {
            string invoiceNumber = invoiceView.InvoiceNumber;

            Task <Invoice> viewTask = Task.Run(() => unitOfWork.invoiceRepository.GetInvoiceByInvoiceNumber(invoiceNumber));

            Task.WaitAll(viewTask);

            //TODO applicationFactory needs to have a merge feature created
            invoiceView.InvoiceId       = viewTask.Result.InvoiceId;
            invoiceView.InvoiceNumber   = viewTask.Result.InvoiceNumber;
            invoiceView.InvoiceDate     = viewTask.Result.InvoiceDate;
            invoiceView.Amount          = viewTask.Result.Amount;
            invoiceView.CustomerId      = viewTask.Result.Customer.CustomerId;
            invoiceView.CustomerName    = viewTask.Result.Customer.AddressBook.Name;
            invoiceView.Description     = viewTask.Result.Description;
            invoiceView.TaxAmount       = viewTask.Result.TaxAmount;
            invoiceView.PaymentDueDate  = viewTask.Result.PaymentDueDate;
            invoiceView.DiscountAmount  = viewTask.Result.DiscountAmount;
            invoiceView.PaymentTerms    = viewTask.Result.PaymentTerms;
            invoiceView.CompanyId       = viewTask.Result.Company.CompanyId;
            invoiceView.CompanyName     = viewTask.Result.Company.CompanyName;
            invoiceView.CompanyStreet   = viewTask.Result.Company.CompanyStreet;
            invoiceView.CompanyCity     = viewTask.Result.Company.CompanyCity;
            invoiceView.CompanyZipcode  = viewTask.Result.Company.CompanyZipcode;
            invoiceView.DiscountDueDate = viewTask.Result.DiscountDueDate;
            invoiceView.FreightCost     = viewTask.Result.FreightCost;

            return(this as IInvoice);
        }
Ejemplo n.º 2
0
        public ActionResult NuevaFactura(InvoiceView invoiceView)
        {
            var invoiceNumber = Request["Invoice.InvoiceNumber"];
            var serie         = Request["Invoice.Serie"];

            invoiceView = Session["InvoiceView"] as InvoiceView;
            invoiceView.Invoice.InvoiceDate   = util.SetDate();
            invoiceView.Invoice.CreatedTime   = util.SetTime();
            invoiceView.Invoice.InvoiceNumber = invoiceNumber;
            invoiceView.Invoice.Serie         = serie;
            _invoiceService.Create(invoiceView.Invoice);
            var idInvoice = _invoiceService.GetLastId();

            foreach (ProductView item in invoiceView.ProductList)
            {
                InvoiceDetail invoiceDetail = new InvoiceDetail
                {
                    InvoiceId = idInvoice,
                    ProductId = item.Id,
                    Price     = item.Price,
                    Qty       = item.Quantity
                };
                _invoiceDetailService.Create(invoiceDetail);
                var product = _productService.FindbyId(item.Id);
                product.Stock = product.Stock - item.Quantity;
                _productService.Update(product);
            }
            ViewData["success"] = "Factura agregada con exito";
            Session.Clear();
            return(RedirectToAction("Index", "Factura"));
        }
Ejemplo n.º 3
0
 public override void LoadView()
 {
     View = new InvoiceView(this)
     {
         Invoice = Invoice.FromLocalId(Settings.Shared.CurrentInvoice),
     };
 }
Ejemplo n.º 4
0
        public async Task <IFluentCustomerLedger> CreateCustomerLedgerByInvoiceView(InvoiceView invoiceView)
        {
            Task <AccountReceivable> acctRecLookupTask = unitOfWork.accountReceivableRepository.GetEntityByPurchaseOrderId(invoiceView.PurchaseOrderId);
            Task <Customer>          customerTask      = unitOfWork.customerRepository.GetEntityById(invoiceView.CustomerId);

            Task.WaitAll(acctRecLookupTask, customerTask);

            Task <GeneralLedger> generalLedgerTask = unitOfWork.generalLedgerRepository.GetEntityByDocNumber(acctRecLookupTask.Result?.DocNumber, "OV");

            Task.WaitAll(generalLedgerTask);

            CustomerLedger customerLedger = new CustomerLedger {
                CustomerId          = invoiceView.CustomerId ?? 0,
                GeneralLedgerId     = generalLedgerTask.Result?.GeneralLedgerId ?? 0,
                InvoiceId           = invoiceView.InvoiceId ?? 0,
                AccountReceivableId = acctRecLookupTask.Result?.AccountReceivableId ?? 0,
                DocNumber           = generalLedgerTask.Result?.DocNumber ?? 0,
                DocType             = generalLedgerTask.Result?.DocType,
                Amount               = invoiceView.Amount,
                Gldate               = generalLedgerTask.Result?.Gldate,
                AccountId            = generalLedgerTask.Result?.AccountId ?? 0,
                CreatedDate          = DateTime.Now,
                AddressId            = customerTask.Result.AddressId,
                Comment              = generalLedgerTask.Result?.Comment,
                DebitAmount          = generalLedgerTask.Result?.DebitAmount,
                CreditAmount         = generalLedgerTask.Result?.CreditAmount,
                FiscalPeriod         = generalLedgerTask.Result?.FiscalPeriod ?? 0,
                FiscalYear           = generalLedgerTask.Result?.FiscalYear ?? 0,
                CheckNumber          = generalLedgerTask.Result?.CheckNumber,
                CustomerLedgerNumber = (await unitOfWork.nextNumberRepository.GetNextNumber(TypeOfCustomerLedger.CustomerLedgerNumber.ToString())).NextNumberValue
            };

            AddCustomerLedger(customerLedger);
            return(this as IFluentCustomerLedger);
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> PutInvoiceView(int id, InvoiceView invoiceView)
        {
            if (id != invoiceView.InvoiceId)
            {
                return(BadRequest());
            }

            _context.Entry(invoiceView).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!InvoiceViewExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Ejemplo n.º 6
0
        public async Task <ActionResult <InvoiceView> > PostInvoiceView(InvoiceView invoiceView)
        {
            _context.InvoiceView.Add(invoiceView);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetInvoiceView", new { id = invoiceView.InvoiceId }, invoiceView));
        }
Ejemplo n.º 7
0
        private void DgButton_Delete(object sender, RoutedEventArgs e)
        {
            try
            {
                InvoiceView row = (InvoiceView)dgInvoice.SelectedItem;

                if (row == null)
                {
                    return;
                }
                if (MessageBox.Show(String.Format("Delete '{0}' ?", row.ProductName), "Confirm delete", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes) == MessageBoxResult.No)
                {
                    return;
                }

                viewInvoiceList.Remove(row);
                invoiceList.Remove(invoiceList.Where(x => x.StockItemId == row.StockItemId).Single());
                if (invoiceList.Count == 0)
                {
                    btnAdd.Visibility = Visibility.Hidden;
                }
                AddToDataGrid();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 8
0
        public static Result GetInvoice(string invoiceGUID)
        {
            Result     result = new Result();
            MMOverride db     = null;

            try
            {
                db = new MMOverride();
                InvoiceView invoice = db.InvoiceViews.SingleOrDefault <InvoiceView>(i => i.InvoiceGUID.ToString() == invoiceGUID && i.Status == (byte)Status.Actived);
                result.QueryResult = invoice;
            }
            catch (System.Data.SqlClient.SqlException se)
            {
                result.Error.Code        = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT;
                result.Error.Description = se.ToString();
            }
            catch (Exception e)
            {
                result.Error.Code        = ErrorCode.UNKNOWN_ERROR;
                result.Error.Description = e.ToString();
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                    db = null;
                }
            }

            return(result);
        }
Ejemplo n.º 9
0
        public ActionResult GetInvoiceListData(string startDate, string endDate)
        {
            List <InvoiceView> objInvoiceList = new List <InvoiceView>();

            try
            {
                DataTable dt = objDbTrx.GetInvoiceViewDtl(startDate, endDate);
                if (dt.Rows.Count > 0)
                {
                    for (int iCnt = 0; iCnt < dt.Rows.Count; iCnt++)
                    {
                        InvoiceView icc = new InvoiceView();
                        icc.InvoiceId        = Convert.ToInt64(dt.Rows[iCnt]["InvoiceId"].ToString());
                        icc.InvoiceNo        = Convert.ToString(dt.Rows[iCnt]["InvoiceNo"].ToString());
                        icc.InvoiceDate      = Convert.ToDateTime(dt.Rows[iCnt]["InvoiceDate"].ToString()).ToString("dd-MMM-yyyy");
                        icc.Save_Status      = (dt.Rows[iCnt]["Save_Status"].ToString() == "1" ? "Confirm" : "Draft");
                        icc.CategoryName     = Convert.ToString(dt.Rows[iCnt]["CHALLAN_BOOK_CATEGORY"].ToString());
                        icc.UpdatedBy        = Convert.ToString(dt.Rows[iCnt]["UPDATED_BY"].ToString());
                        icc.UpdatedTimeStamp = Convert.ToDateTime(dt.Rows[iCnt]["UPDATED_TS"].ToString()).ToString("dd-MMM-yyyy");
                        objInvoiceList.Add(icc);
                    }
                }
            }
            catch (Exception ex)
            {
                objDbTrx.SaveSystemErrorLog(ex, Request.UserHostAddress);
            }
            return(Json(objInvoiceList, JsonRequestBehavior.AllowGet));
            //  return View();
        }
        /// <summary>  </summary>
        /// <param name="invoiceAdd">this is a test</param>
        /// <returns></returns>
        /// <remarks>
        /// ///

        /// </remarks>
        public async Task <IInvoiceView> InvoiceUpdate(IInvoiceUpdate invoiceUpdate)
        {
            try
            {
                var result = new InvoiceView();
                using (var db = new InvoiceContext())
                {
                    if (db.Invoices.Any(w => w.InvoiceId == invoiceUpdate.InvoiceId))
                    {
                        var invoice = db.Invoices.First(w => w.InvoiceId == invoiceUpdate.InvoiceId);
                        invoice.CreatedDate        = invoiceUpdate.CreatedDate;
                        invoice.DueDate            = invoiceUpdate.DueDate;
                        invoice.EmailTo            = invoiceUpdate.EmailTo;
                        invoice.GrandTotal         = invoiceUpdate.GrandTotal;
                        invoice.InvoiceEmailed     = invoiceUpdate.InvoiceEmailed;
                        invoice.InvoiceNo          = invoiceUpdate.InvoiceNo;
                        invoice.OrderedBy          = invoiceUpdate.OrderedBy;
                        invoice.PaidAmount         = invoiceUpdate.PaidAmount;
                        invoice.PaidDate           = invoiceUpdate.PaidDate;
                        invoice.PaidTax            = invoiceUpdate.PaidTax;
                        invoice.PaymentDetails     = invoiceUpdate.PaymentDetails;
                        invoice.PurchaseOrderRef   = invoiceUpdate.PurchaseOrderRef;
                        invoice.SubTotal           = invoiceUpdate.SubTotal;
                        invoice.TaxTotal           = invoiceUpdate.TaxTotal;
                        invoice.TermsAndConditions = invoiceUpdate.TermsAndConditions;
                        await db.SaveChangesAsync();

                        result.CreatedDate      = invoice.CreatedDate;
                        result.DueDate          = invoice.DueDate;
                        result.EmailTo          = invoice.EmailTo;
                        result.GrandTotal       = invoice.GrandTotal;
                        result.InvoiceEmailed   = invoice.InvoiceEmailed;
                        result.InvoiceId        = invoice.InvoiceId;
                        result.InvoiceNo        = invoice.InvoiceNo;
                        result.Notes            = invoice.Notes;
                        result.OrderedBy        = invoice.OrderedBy;
                        result.PaidAmount       = invoice.PaidAmount;
                        result.PaidDate         = invoice.PaidDate;
                        result.PaidTax          = invoice.PaidTax;
                        result.PaymentDetails   = invoice.PaymentDetails;
                        result.PurchaseOrderRef = invoice.PurchaseOrderRef;
                        result.Status           = (int)invoice.Status;
                        result.SubTotal         = invoice.SubTotal;
                        result.Tax = invoice.TaxTotal;
                        result.TermsAndConditions = invoice.TermsAndConditions;
                        return(result);
                    }
                }
            }
            catch (Exception e)
            {
                LogFactory.GetLogger().Log(LogLevel.Error, e);
                return(new InvoiceView()
                {
                    __CQRSSuccessful = false, __CQRSErrorMessage = "Unable to create InvoiceView", __CQRSStatusCode = 500
                });
            }
            return(null);
        }
Ejemplo n.º 11
0
        public IInvoiceDetail CreateInvoiceDetails(InvoiceView invoiceView)
        {
            Task <CreateProcessStatus> resultTask = Task.Run(() => unitOfWork.invoiceDetailRepository.CreateInvoiceDetailsByView(invoiceView));

            Task.WaitAll(resultTask);
            processStatus = resultTask.Result;
            return(this as IInvoiceDetail);
        }
Ejemplo n.º 12
0
        public IAccountsReceivable CreateAcctRecFromInvoice(InvoiceView invoiceView)
        {
            Task <CreateProcessStatus> resultTask = Task.Run(() => unitOfWork.accountReceiveableRepository.CreateAcctRecFromInvoice(invoiceView));

            Task.WaitAll(resultTask);
            processStatus = resultTask.Result;
            return(this as IAccountsReceivable);
        }
Ejemplo n.º 13
0
        public ActionResult Invoices()
        {
            InvoiceView source = new InvoiceView();

            source.invoices        = mng.Invoice.GetInvoices();
            source.invoiceStatuses = mng.Invoice.GetStatuses();
            source.contractor      = mng.Contractor.GetContractors();
            return(View(source));
        }
Ejemplo n.º 14
0
        public void InitDisplay()
        {
            //    this.progressView.CloseDialog();

            PosContext.Instance.KeysByControl.Clear();
            //_container.
            OneLineView oneLine = _container.Resolve <OneLineView>();

            _regionManager.Regions[Regions.OperatorPromptRegion].Add(oneLine);
            PosContext.Instance.PosPrompt = oneLine;
            // PosContext.Instance.Operprompt = oneLine;

            //  LeftMenuView leftMenu = _container.Resolve<LeftMenuView>(PosContext.Instance.Parameters.getParam("HomeLeftPanelNo"));
            //  _regionManager.Regions[Regions.LeftMenuRegion].Add(leftMenu, "ActiveView");
            //  leftMenu.LoadControls();

            BottomMenuView bottomMenu = _container.Resolve <BottomMenuView>();

            _regionManager.Regions[Regions.NavigatorRegion].Add(bottomMenu);
            bottomMenu.LoadControls();

            InvoiceView invView = _container.Resolve <InvoiceView>();

            _container.RegisterInstance <InvoiceView>(invView);
            PosContext.Instance.ReceiptDetails = invView;
            _regionManager.Regions[Regions.InvoiceRegion].Add(invView, "ActiveView");

            InvoiceTotalView invTotalView = _container.Resolve <InvoiceTotalView>();

            PosContext.Instance.ReceiptTotal = invTotalView;
            _container.RegisterInstance <InvoiceTotalView>("InvoiceTotalView", invTotalView);
            _regionManager.Regions[Regions.InvoiceTotalRegion].Add(invTotalView, "ActiveView");
            //invTotalView.LoadControls();



            KeyPadView keyPadView = _container.Resolve <KeyPadView>("KeyPadView");

            _regionManager.Regions[Regions.KeyPadRegion].Add(keyPadView, "ActiveView");
            keyPadView.LoadControls();



            InvoiceHeaderView invHeaderView = _container.Resolve <InvoiceHeaderView>();

            PosContext.Instance.ReceiptHeader = invHeaderView;
            _regionManager.Regions[Regions.InvoiceHeaderRegion].Add(invHeaderView);


            ItemGroupView itemGroupView = _container.Resolve <ItemGroupView>();

            _regionManager.Regions[Regions.LeftMenuRegion].Add(itemGroupView, "ActiveView");
            itemGroupView.AddPosKeys(1, "Item Groups");


            PosContext.Instance.PosInit("Logon");
        }
Ejemplo n.º 15
0
        private void _buttonInspekteraUtgift_Click(object sender, RoutedEventArgs e)
        {
            _mainViewModel.InvoiceViewModel.Update();
            var view = new InvoiceView {
                DataContext = _mainViewModel.InvoiceViewModel
            };

            Navigate(view);
        }
Ejemplo n.º 16
0
        private void btnAddToInvoiceList_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (Convert.ToInt32(txtQuantity.Text) > Convert.ToInt32(txtAvailableQuantity.Text))
                {
                    MessageBox.Show("Quantity must be less than or equal to available quantity.", "", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }

                if (txtProductName.Text.Length < 1)
                {
                    MessageBox.Show("Please select a product.", "Incomplete Entry", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                if (txtQuantity.Text.Length < 1)
                {
                    MessageBox.Show("Please Enter the required field 'Quantity'", "Incomplete Entry", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                //InvoiceItem objinvoiceItem = new InvoiceItem();
                ////objinvoiceItem.StockItemId = product.Id;
                //objinvoiceItem.Qty = Convert.ToInt32(txtQuantity.Text);
                //objinvoiceItem.SellingPrice = Convert.ToInt32(txtPricePerUnit.Text);
                //objinvoiceItem.Tax = Convert.ToInt32(txtTax.Text);
                //objinvoiceItem.Discount = Convert.ToInt32(txtDiscount.Text);
                InvoiceView objviewInvoice = new InvoiceView();
                objviewInvoice.StockItemId  = tempstockItem.StockItemId;
                objviewInvoice.Qty          = Convert.ToInt32(txtQuantity.Text);
                objviewInvoice.ProductName  = txtProductName.Text;
                objviewInvoice.Origin       = txtOrigin.Text;
                objviewInvoice.GenericName  = txtGenericName.Text;
                objviewInvoice.SellingPrice = Convert.ToInt32(txtPricePerUnit.Text);
                objviewInvoice.Tax          = Convert.ToInt32(txtTax.Text);
                objviewInvoice.Discount     = Convert.ToInt32(txtDiscount.Text);


                InvoiceItem objinvoiceItem = new InvoiceItem();
                objinvoiceItem.StockItemId  = objviewInvoice.StockItemId;
                objinvoiceItem.Qty          = objviewInvoice.Qty;
                objinvoiceItem.SellingPrice = objviewInvoice.SellingPrice;
                objinvoiceItem.Tax          = objviewInvoice.Tax;
                objinvoiceItem.Discount     = objviewInvoice.Discount;

                viewInvoiceList.Add(objviewInvoice);
                invoiceList.Add(objinvoiceItem);
                AddToDataGrid();
                ClearFields();
                btnAdd.Visibility  = Visibility.Visible;
                btnDone.Visibility = Visibility.Hidden;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        public async Task <InvoiceView> CreateInvoice(UpdateInvoice updateInvoice)
        {
            try
            {
                var result = new InvoiceView();
                using (var db = new InvoiceContext())
                {
                    if (db.Invoices.Any(w => w.InvoiceId == updateInvoice.InvoiceId))
                    {
                        var invoice = db.Invoices.First(w => w.InvoiceId == updateInvoice.InvoiceId);
                        invoice.BillngAddress    = updateInvoice.BillngAddress;
                        invoice.CreatedDate      = updateInvoice.CreatedDate;
                        invoice.DueDate          = updateInvoice.DueDate;
                        invoice.EmailTo          = updateInvoice.EmailTo;
                        invoice.GrandTotal       = updateInvoice.GrandTotal;
                        invoice.InvoiceEmailed   = updateInvoice.InvoiceEmailed;
                        invoice.InvoiceNo        = updateInvoice.InvoiceNo;
                        invoice.OrderedBy        = updateInvoice.OrderedBy;
                        invoice.PaidAmount       = updateInvoice.PaidAmount;
                        invoice.PaidDate         = updateInvoice.PaidDate;
                        invoice.PaidTax          = updateInvoice.PaidTax;
                        invoice.PaymentDetails   = updateInvoice.PaymentDetails;
                        invoice.PurchaseOrderRef = updateInvoice.PurchaseOrderRef;
                        invoice.ShippingAddress  = updateInvoice.ShippingAddress;
                        invoice.SubTotal         = updateInvoice.SubTotal;
                        invoice.Tax = updateInvoice.Tax;
                        invoice.TermsAndConditions = updateInvoice.TermsAndConditions;
                        await db.SaveChangesAsync();

                        result.CreatedDate      = invoice.CreatedDate;
                        result.DueDate          = invoice.DueDate;
                        result.EmailTo          = invoice.EmailTo;
                        result.GrandTotal       = invoice.GrandTotal;
                        result.InvoiceEmailed   = invoice.InvoiceEmailed;
                        result.InvoiceId        = invoice.InvoiceId;
                        result.InvoiceNo        = invoice.InvoiceNo;
                        result.OrderedBy        = invoice.OrderedBy;
                        result.PaidAmount       = invoice.PaidAmount;
                        result.PaidDate         = invoice.PaidDate;
                        result.PaidTax          = invoice.PaidTax;
                        result.PaymentDetails   = invoice.PaymentDetails;
                        result.PurchaseOrderRef = invoice.PurchaseOrderRef;
                        result.SubTotal         = invoice.SubTotal;
                        result.Tax = invoice.Tax;
                        result.TermsAndConditions = invoice.TermsAndConditions;
                        return(result);
                    }
                }
            }
            catch (Exception e)
            {
                LogFactory.GetLogger().Log(LogLevel.Error, e);
            }
            return(null);
        }
Ejemplo n.º 18
0
        public void TestPostInvoiceAndDetailToAcctRec()
        {
            try
            {
                //NextNumber nextNumber = await unitOfWork.invoiceRepository.GetNextNumber("InvoiceNumber");

                InvoiceView invoiceView = new InvoiceView();

                invoiceView.InvoiceNumber = "Inv-03";
                invoiceView.InvoiceDate   = DateTime.Parse("8/10/2018");
                invoiceView.Amount        = 1500.0M;
                invoiceView.CustomerId    = 9;
                invoiceView.Description   = "VNW Fixed Asset project";
                invoiceView.PaymentTerms  = "Net 30";
                invoiceView.TaxAmount     = 0;
                invoiceView.CompanyId     = 1;

                InvoiceDetailView invoiceDetailView = new InvoiceDetailView();
                invoiceDetailView.Amount = 1500M;
                //invoiceDetailView.InvoiceId = invoice.InvoiceId;


                invoiceDetailView.UnitOfMeasure   = "Project";
                invoiceDetailView.Quantity        = 1;
                invoiceDetailView.UnitPrice       = 1500M;
                invoiceDetailView.Amount          = 1500M;
                invoiceDetailView.DiscountPercent = 0;
                invoiceDetailView.DiscountAmount  = 0;
                invoiceDetailView.ItemId          = 4;


                invoiceView.InvoiceDetailViews.Add(invoiceDetailView);

                InvoiceModule invoiceModule = new InvoiceModule();

                invoiceModule
                .Invoice.CreateInvoice(invoiceView).Apply()
                .MergeWithInvoiceNumber(ref invoiceView);
                invoiceModule
                .InvoiceDetail.CreateInvoiceDetails(invoiceView).Apply();
                invoiceModule
                .AccountsReceivable.CreateAcctRecFromInvoice(invoiceView).Apply();
                invoiceModule
                .GeneralLedger.CreateGeneralLedger(invoiceView).Apply().UpdateLedgerBalances();

                //bool result=await invoiceModule.PostInvoiceAndDetailToAcctRec(invoiceView);

                Assert.True(true);
            }
            catch (Exception ex)
            {
                throw new Exception("TestPostInvoiceAndDetailToAcctRec", ex);
            }
        }
Ejemplo n.º 19
0
 private void RemoveProductLineFromProductLinesList(InvoiceView invoiceView)
 {
     foreach (var productLine in ProductLinesList)
     {
         if (productLine.ProductLineId == invoiceView.InvoiceId)
         {
             ProductLinesList.Remove(productLine);
             break;
         }
     }
 }
Ejemplo n.º 20
0
 private void RemoveDiscountFromDiscountsList(InvoiceView invoiceView)
 {
     foreach (var discount in TotalDiscountsList)
     {
         if (discount.DiscountId == invoiceView.InvoiceId)
         {
             TotalDiscountsList.Remove(discount);
             break;
         }
     }
 }
Ejemplo n.º 21
0
 private static void RemoveInvoiceProductLine(InvoiceView invoiceView, Invoice ticket)
 {
     foreach (var invoiceProductLine in ticket.ProductLines)
     {
         if (invoiceProductLine.ProductLineId == invoiceView.InvoiceId)
         {
             ticket.ProductLines.Remove(invoiceProductLine);
             break;
         }
     }
 }
Ejemplo n.º 22
0
        public ActionResult BuscarCliente(InvoiceView invoiceView)
        {
            invoiceView = Session["InvoiceView"] as InvoiceView;
            var customerId = int.Parse(Request["CustomerId"]);

            invoiceView.Customer = _customerService.FindbyId(customerId);
            var list = _customerService.GetAll().ToList();

            ViewBag.CustomerId = new SelectList(list, "Id", "FullName");
            return(View("NuevaFactura", invoiceView));
        }
Ejemplo n.º 23
0
 public async Task Cancel()
 {
     if (InvoiceView.InvoiceId > 0)
     {
         await Load(InvoiceView.InvoiceId);
     }
     else
     {
         InvoiceView = new InvoiceView();
     }
 }
Ejemplo n.º 24
0
        public InvoiceView SetAProductLine(IEnumerable <InvoiceView> join, ObservableCollection <InvoiceView> invoiceViewsList)
        {
            InvoiceView invoiceView = null;

            foreach (var invoiceViewToSearch in join)
            {
                invoiceView = invoiceViewToSearch;
                invoiceViewsList.Add(invoiceView);
            }
            return(invoiceView);
        }
Ejemplo n.º 25
0
        public ActionResult NuevaFactura()
        {
            InvoiceView invoiceView = new InvoiceView();

            invoiceView.Invoice             = new Invoice();
            invoiceView.Customer            = new Customer();
            invoiceView.ProductList         = new List <ProductView>();
            invoiceView.Invoice.InvoiceDate = util.SetDate();
            Session["InvoiceView"]          = invoiceView;
            return(View(invoiceView));
        }
Ejemplo n.º 26
0
        private static void CreateInvoice()
        {
            var invoiceViewModel = new InvoiceViewModel {
                Description = "Счет на оплату"
            };
            var invoiceView = new InvoiceView();

            invoiceViewModel.View = invoiceView;

            Workspace.This.Panels.Add(invoiceViewModel);
            Workspace.This.ActiveDocument = invoiceViewModel;
        }
Ejemplo n.º 27
0
 /// <summary>
 /// Implements the execution of <see cref="BillPrintCommand" />
 /// </summary>
 private void BillPrintCommand_Execute(object obj)
 {
     if (SelectedSaleVm.BevarageVms.Count > 0)
     {
         InvoiceView view = new InvoiceView(SelectedSaleVm);
         view.ShowDialog();
     }
     else
     {
         MessageBox.Show("Nothing to write in bill");
     }
 }
Ejemplo n.º 28
0
        public async Task <CreateProcessStatus> CreateAcctRecFromInvoice(InvoiceView invoiceView)
        {
            try
            {
                Invoice invoice = await(from e in _dbContext.Invoices
                                        where e.InvoiceNumber == invoiceView.InvoiceNumber
                                        select e).FirstOrDefaultAsync <Invoice>();

                if (invoice != null)
                {
                    long?invoiceId = invoice.InvoiceId;

                    var query = await(from a in _dbContext.AcctRecs
                                      where a.InvoiceId == invoice.InvoiceId
                                      select a).FirstOrDefaultAsync <AcctRec>();

                    if (query == null)
                    {
                        UDC udc = await base.GetUdc("ACCTRECDOCTYPE", "INV");

                        NextNumber nextNumber = await base.GetNextNumber("DocNumber");

                        ChartOfAcct chartOfAcct = await base.GetChartofAccount("1000", "1200", "120", "");

                        AcctRec acctRec = new AcctRec();
                        acctRec.InvoiceId       = invoice.InvoiceId;
                        acctRec.DiscountDueDate = invoice.DiscountDueDate;
                        acctRec.GLDate          = DateTime.Now.Date;
                        acctRec.CreateDate      = DateTime.Now.Date;
                        acctRec.DocNumber       = nextNumber.NextNumberValue;
                        acctRec.Remarks         = invoice.Description;
                        acctRec.PaymentTerms    = invoice.PaymentTerms;
                        acctRec.CustomerId      = invoice.CustomerId;
                        //PurchaseOrderId
                        acctRec.Description          = invoice.Description;
                        acctRec.AcctRecDocTypeXRefId = udc.XRefId;
                        acctRec.AccountId            = chartOfAcct.AccountId;
                        acctRec.Amount       = invoice.Amount;
                        acctRec.OpenAmount   = invoice.Amount;
                        acctRec.DebitAmount  = 0;
                        acctRec.CreditAmount = invoice.Amount;

                        AddObject(acctRec);
                        return(CreateProcessStatus.Insert);
                    }
                }

                return(CreateProcessStatus.AlreadyExists);
            }
            catch (Exception ex) { throw new Exception(GetMyMethodName(), ex); }
        }
Ejemplo n.º 29
0
        //==============================================================================


        public InvoiceViewModel(
            AppRepository <KfsContext> aAppDbRepository, TDStransactionControl aTDStransactionControl)
            : base(aAppDbRepository, aTDStransactionControl)
        {
            _myView             = new InvoiceView();
            _myView.DataContext = this;


            Command_NavigatBack = new RelayCommand(NavigateBack);
            Command_ToMainMenu  = new RelayCommand(NavigateToMainMenu);
            Command_Print       = new RelayCommand(Print);

            //BrowserUri. = @"C:\Users\Tompie_HD2\source\repos\KFSolutions\KFSolutionsWPF\bin\Debug\accountancy\invoices\CV_dilenTom.pdf";
        }
Ejemplo n.º 30
0
        public async Task <IFluentGeneralLedger> CreateGeneralLedgerByInvoiceView(InvoiceView invoiceView)
        {
            try
            {
                AccountReceivable acctRec = await unitOfWork.accountReceivableRepository.GetEntityByPurchaseOrderId(invoiceView.PurchaseOrderId);


                if (acctRec != null)
                {
                    GeneralLedger generalLedgerLookup = await unitOfWork.generalLedgerRepository.FindEntityByDocNumber(acctRec.DocNumber);

                    if (generalLedgerLookup == null)
                    {
                        long addressId = await unitOfWork.addressBookRepository.GetAddressIdByCustomerId(acctRec.CustomerId);

                        //Revenue Account
                        ChartOfAccount chartOfAcct = await unitOfWork.chartOfAccountRepository.GetChartofAccount("1000", "1200", "250", "");


                        GeneralLedger ledger = new GeneralLedger();
                        ledger.DocNumber           = acctRec.DocNumber ?? 0;
                        ledger.DocType             = "OV";
                        ledger.Amount              = acctRec.Amount ?? 0;
                        ledger.LedgerType          = "AA";
                        ledger.Gldate              = DateTime.Now.Date;
                        ledger.FiscalPeriod        = DateTime.Now.Date.Month;
                        ledger.FiscalYear          = DateTime.Now.Date.Year;
                        ledger.AccountId           = chartOfAcct.AccountId;
                        ledger.CreatedDate         = DateTime.Now.Date;
                        ledger.AddressId           = addressId;
                        ledger.Comment             = acctRec.Remark;
                        ledger.DebitAmount         = 0.0M;
                        ledger.CreditAmount        = acctRec.Amount ?? 0;
                        ledger.GeneralLedgerNumber = (await unitOfWork.nextNumberRepository.GetNextNumber(TypeOfGeneralLedger.GeneralLedgerNumber.ToString())).NextNumberValue;

                        AddGeneralLedger(ledger);
                        return(this as IFluentGeneralLedger);
                    }
                    processStatus = CreateProcessStatus.AlreadyExists;
                    return(this as IFluentGeneralLedger);
                }
                processStatus = CreateProcessStatus.Failed;
                return(this as IFluentGeneralLedger);
            }
            catch (Exception ex)
            {
                throw new Exception(GetMyMethodName(), ex);
            }
        }
Ejemplo n.º 31
0
		public override void LoadView ()
		{
			View = new InvoiceView (this) {
				Invoice = Invoice.FromLocalId (Settings.Shared.CurrentInvoice),
			};
		}
Ejemplo n.º 32
0
        public static List<InvoiceView> GetInvoiceForReport(int invoiceID)
        {
            InvoiceView invoice = null;
            List<InvoiceView> invoices = new List<InvoiceView>();
            Invoice claimInvoice = null;
            Client client = null;
            LeadPolicy policy = null;
            Leads lead = null;
            ZipCodeMaster zipCodeMaster = null;
            //ClaimService mActivity = null;

            claimInvoice = (from x in DbContextHelper.DbContext
                                   .Invoice
                                   .Include("InvoiceDetail")
                                   .Include("InvoiceDetail.InvoiceServiceType")
                                   .Include("InvoiceDetail.InvoiceServiceType.InvoiceServiceUnit")
                                   .Include("Claim")
                                   .Include("Claim.LeadPolicy.Leads.Client")
                                   .Include("Claim.LeadPolicy.Leads.Client.StateMaster")
                                   .Include("Claim.LeadPolicy.Leads.Client.CityMaster")
                                   .Include("Claim.LeadPolicy")
                                   .Include("Claim.LeadPolicy.LeadPolicyType")
                                   .Include("Claim.ClaimService")
                         where x.InvoiceID == invoiceID

                         select x
                            ).FirstOrDefault<Invoice>();

            if (claimInvoice != null)
            {
                invoice = new InvoiceView();
                invoice.invoiceID = claimInvoice.InvoiceID;
                invoice.invoiceDate = (DateTime)claimInvoice.InvoiceDate;
                invoice.dueDate = claimInvoice.DueDate == null ? DateTime.Now : (DateTime)claimInvoice.DueDate;
                invoice.invoiceNumber = (int)(claimInvoice.InvoiceNumber ?? 0);

                invoice.billTo = claimInvoice.BillToName;
                invoice.billToAddress1 = claimInvoice.BillToAddress1;
                invoice.billToAddress2 = claimInvoice.BillToAddress2;
                invoice.billToAddress3 = claimInvoice.BillToAddress3;
                invoice.totalAmount = claimInvoice.TotalAmount ?? 0;

                //invoice.activity = claimInvoice.Claim.ClaimService NEW OC 9/30/14

                    //invoice.adjusterInvoiceNumber = claimInvoice.AdjusterInvoiceNumber;

                // get policy type associated with invoice
                //claimInvoice.Lead.LeadPolicies.FirstOrDefault(x => x.PolicyType == claimInvoice.PolicyTypeID);

                //mActivity = claimInvoice.Claim.ClaimService.FirstOrDefault();
                //invoice.activity = mActivity.Activity;

                policy = claimInvoice.Claim.LeadPolicy;
                if (policy != null)
                {
                    invoice.policyType = policy.LeadPolicyType == null ? "" : policy.LeadPolicyType.Description;
                    invoice.policyNumber = policy.PolicyNumber;

                    lead = policy.Leads;

                }

                invoice.claimNumber = claimInvoice.Claim.AdjusterClaimNumber;
                invoice.insurerFileNo = claimInvoice.Claim.InsurerClaimNumber;
                invoice.adjusterInvoiceNumber = claimInvoice.InvoiceNumber.ToString();

                if (lead != null)
                {
                    invoice.claimantName = lead.InsuredName;//policyHolderName; OC  9/30/14
                    invoice.claimantAddress1 = lead.LossAddress;
                    invoice.claimantAddress2 = lead.LossAddress2;
                    invoice.claimantAddress3 = string.Format("{0}, {1} {2}",
                            lead.CityName ?? "",
                            lead.StateName ?? "",
                            lead.Zip ?? "");

                    client = lead.Client;
                }

                invoice.taxRate = claimInvoice.TaxRate;

                if (claimInvoice.Claim.LossDate != null)
                    invoice.claimDate = (DateTime)claimInvoice.Claim.LossDate;

                invoice.invoiceLines = claimInvoice.InvoiceDetail.ToList();

                // add sales tax
                if (invoice.taxRate > 0)
                {
                    InvoiceDetail invoiceTaxLine = new InvoiceDetail();
                    invoiceTaxLine.InvoiceID = invoice.invoiceID;
                    invoiceTaxLine.LineDescription = "Sales Tax";
                    //invoiceTaxLine.isBillable = true;
                    invoiceTaxLine.LineAmount = invoice.totalAmount * (invoice.taxRate / 100);
                    invoiceTaxLine.Activity = invoice.activity;
                    invoice.invoiceLines.Add(invoiceTaxLine);

                }

                if (client != null)
                {
                    client = lead.Client;

                    invoice.clientName = client.BusinessName;
                    invoice.clientAddress1 = client.StreetAddress1;
                    invoice.clientAddress2 = client.StreetAddress2;

                    string stateName = client.StateMaster != null ? client.StateMaster.StateCode : "";
                    string cityName = client.CityMaster != null ? client.CityMaster.CityName : "";
                    string zipCode = client.ZipCode ?? "";

                    // this is badly designed.
                    if (!string.IsNullOrEmpty(zipCode))
                    {
                        zipCodeMaster = ZipCode.Get(zipCode);
                        if (zipCodeMaster != null)
                            zipCode = zipCodeMaster.ZipCode;
                    }

                    invoice.clientAddress3 = cityName + ", " + stateName + " " + zipCode;

                    invoice.clientPhone = client.PrimaryPhoneNo;
                    invoice.clientFax = client.SecondaryPhoneNo;
                    invoice.clientEmail = client.PrimaryEmailId;
                    invoice.federalIDNo = client.FederalIDNo;

                    invoice.logoPath = string.Format("{0}/ClientLogo/{1}.jpg", ConfigurationManager.AppSettings["appURL"].ToString(), client.ClientId);
                }
                else
                {
                    invoice.logoPath = ConfigurationManager.AppSettings["appURL"].ToString() + "/images/claim_ruler_logo.jpg";
                    invoice.clientName = "Claim Ruler Demo";
                    invoice.clientAddress1 = "400 East Las Olas Blvd";
                    invoice.clientAddress2 = "Suite 404";
                    invoice.clientAddress3 = "Ft. Lauderdale, FL 33301";
                    invoice.clientPhone = "999-999-9999";
                    invoice.clientFax = "999-999-9999";
                    invoice.clientEmail = "*****@*****.**";
                    invoice.federalIDNo = "99999999";
                }

                invoices.Add(invoice);
            }

            return invoices;
        }