Ejemplo n.º 1
0
        public decimal GetContractPrice(Guid?contractId)
        {
            var     results    = AppContext.OBK_ContractPrice.Where(e => e.ContractId == contractId).ToList();
            decimal totalCount = results.Sum(e => Math.Round(Convert.ToDecimal(TaxHelper.GetCalculationTax(e.OBK_Ref_PriceList.Price) * e.Count), 2));

            return(totalCount);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets the displayable items for invoice pages
        /// </summary>
        /// <param name="basket">the basket</param>
        /// <param name="includeShipping">whether or not to include shipping charges in displayed items list</param>
        /// <param name="alwaysIncludeTaxes">if true forces taxes to be included in the displayed items list even if
        /// the invoice display is not configured to display them</param>
        /// <returns>the displayable items for the invoice pages</returns>
        public static IList <BasketItem> GetDisplayItemsForInvoice(Basket basket, bool includeShipping, bool alwaysIncludeTaxes = false)
        {
            // ADD STANDARD DISPLAY ITEMS
            IList <BasketItem> displayedBasketItems = new List <BasketItem>();

            foreach (BasketItem item in basket.Items)
            {
                if (DisplayBasketItem(item, includeShipping))
                {
                    displayedBasketItems.Add(item);
                }
            }

            // ADD IN TAX ITEMS IF SPECIFIED FOR DISPLAY
            if (alwaysIncludeTaxes || TaxHelper.GetEffectiveInvoiceDisplay(basket.User) == TaxInvoiceDisplay.LineItem)
            {
                // TAXES SHOULD BE SHOWN
                foreach (BasketItem item in basket.Items.Where(bi => bi.OrderItemType == OrderItemType.Tax))
                {
                    displayedBasketItems.Add(item);
                    if (AbleContext.Current.User.IsAnonymous && !AbleContext.Current.User.PrimaryAddress.IsValid)
                    {
                        item.Name = "<span class=\"item\">" + item.Name + " (estimated)</span>";
                    }
                }
            }

            // SORT ITEMS, THEN COMBINE ORDER COUPON ITEMS FOR DISPLAY
            displayedBasketItems.Sort(new BasketItemComparer());
            displayedBasketItems = displayedBasketItems.CombineOrderCoupons();
            return(displayedBasketItems);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Calculates the amount of tax for the given value
        /// </summary>
        /// <param name="value">The value to calculate tax for</param>
        /// <returns>The calculated tax</returns>
        public decimal Calculate(decimal value)
        {
            // THE RATE IS ALREADY IN PERCENTAGE, MULTIPLY IT TO COST TO GET TAX AMOUNT
            decimal tax = value * this.TaxRate;

            return(TaxHelper.Round((decimal)tax, 2, RoundingRule.Common));
        }
Ejemplo n.º 4
0
        async private void ToolbarItem_Clicked(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(entryMonto.Text) || string.IsNullOrWhiteSpace(ImagePath) || yearsPicker.SelectedIndex == -1)
            {
                await DisplayAlert("Error", "El monto, la foto y el año de la tenencia son obligatorios", "Ok");

                return;
            }

            Tax tax = new Tax
            {
                Year          = Convert.ToInt32(yearsPicker.SelectedItem),
                Monto         = Convert.ToDouble(entryMonto.Text),
                Pagada        = switchPagada.IsToggled,
                FechaPago     = PickerFechaPago.Date,
                Archivo       = ImagePath,
                Observaciones = entryObservaciones.Text,
                CarId         = (BindingContext as Car).Id
            };

            try
            {
                int saved = await TaxHelper.SaveItemAsync(tax);
                await DisplayAlert("Guardar", "Tenencia registrada correctamente", "Ok");

                await Navigation.PopAsync();
            }
            catch (Exception)
            {
                await DisplayAlert("Guardar", "La tenencia NO se pudo registrar", "Ok");

                return;
            }
        }
        protected void CatalogNodeList_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
            {
                Product product    = (Product)e.Item.DataItem;
                Label   productSku = (Label)e.Item.FindControl("ProductSku");
                productSku.Text = product.Sku;

                HyperLink productName = (HyperLink)e.Item.FindControl("ProductName");
                productName.Text        = product.Name;
                productName.NavigateUrl = product.NavigateUrl;

                HyperLink    productManufacturer = (HyperLink)e.Item.FindControl("ProductManufacturer");
                Manufacturer manufacturer        = product.Manufacturer;
                if (manufacturer != null)
                {
                    productManufacturer.Text        = manufacturer.Name;
                    productManufacturer.NavigateUrl = string.Format("~/Search.aspx?m={0}", manufacturer.Id);
                }
                else
                {
                    productManufacturer.Visible = false;
                }

                Label productRetailPrice = (Label)e.Item.FindControl("ProductRetailPrice");
                if (!product.UseVariablePrice && product.MSRP > 0)
                {
                    productRetailPrice.Text = TaxHelper.GetShopPrice(product.MSRP, product.TaxCode != null ? product.TaxCode.Id : 0).LSCurrencyFormat("ulc");
                }
                else
                {
                    productRetailPrice.Visible = false;
                }
            }
        }
Ejemplo n.º 6
0
        private static LSDecimal CalculateTax(TaxRule taxRule, LSDecimal price)
        {
            // DETERMINE TAX FOR TOTAL PRICE
            LSDecimal tempTax = ((price * taxRule.TaxRate) / 100);

            return(TaxHelper.Round((decimal)tempTax, 2, taxRule.RoundingRule));
        }
Ejemplo n.º 7
0
        /// <summary>
        /// расчет 1-копий с НДС
        public decimal GetZbkCopyNds(Guid copyId)
        {
            var refType       = AppContext.OBK_Ref_Type.FirstOrDefault(o => o.Code == "5");
            var ref_PriceList = AppContext.OBK_Ref_PriceList.FirstOrDefault(o => o.TypeId == refType.Id);

            return(Math.Round(Convert.ToDecimal(TaxHelper.GetCalculationTax(ref_PriceList.Price)), 2));
        }
Ejemplo n.º 8
0
        public void SaveCertificateOfCompletion(Guid id)
        {
            var    declaration   = AppContext.OBK_AssessmentDeclaration.FirstOrDefault(e => e.Id == id);
            var    directToPay   = AppContext.OBK_DirectionToPayments.FirstOrDefault(e => e.ContractId == declaration.ContractId);
            var    contractPrice = AppContext.OBK_ContractPrice.Where(e => e.ContractId == declaration.ContractId);
            double taxValue      = TaxHelper.GetNdsRef();
            var    totalPrice    = Convert.ToDecimal(contractPrice.Sum(e => (e.OBK_Ref_PriceList.Price * taxValue + e.OBK_Ref_PriceList.Price) * e.Count));

            if (declaration != null)
            {
                OBK_CertificateOfCompletion act = new OBK_CertificateOfCompletion
                {
                    Id         = Guid.NewGuid(),
                    Number     = declaration.Number,
                    ContractId = (Guid)declaration.ContractId,
                    AssessmentDeclarationId = id,
                    InvoiceNumber1C         = directToPay?.InvoiceNumber1C,
                    InvoiceDatetime1C       = directToPay?.InvoiceDatetime1C,
                    TotalPrice       = totalPrice,
                    CreateDate       = DateTime.Now,
                    SendDate         = DateTime.Now,
                    ActNumber1C      = null,
                    ActDate1C        = null,
                    ActReturnedBack  = false,
                    SendNotification = false
                };
                AppContext.OBK_CertificateOfCompletion.Add(act);
                AppContext.SaveChanges();
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// расчет стоимости с НДС
        /// </summary>
        /// <param name="contractId"></param>
        /// <returns></returns>
        public decimal GetTotalPriceCount(Guid contractId)
        {
            var priceCounts = AppContext.OBK_ContractPrice.Where(e => e.ContractId == contractId).ToList();
            var tPrice      = priceCounts.Sum(e => Math.Round(Convert.ToDecimal(TaxHelper.GetCalculationTax(e.OBK_Ref_PriceList.Price) * e.Count), 2));

            return(tPrice);
        }
Ejemplo n.º 10
0
        public void CalculateTotalAmountWithTaxForCart1_2_3()
        {
            Collection <boCart> lclcCart = new Collection <boCart>();

            //Shopping Cart 1
            boCart iboCart1 = new boCart();

            iboCart1.AddProduct("BK01");
            iboCart1.AddProduct("MS01");
            iboCart1.AddProduct("FD01");
            lclcCart.Add(iboCart1);

            //Shopping Cart 2
            boCart iboCart2 = new boCart();

            iboCart2.AddProduct("FD02");
            iboCart2.AddProduct("PF01");
            lclcCart.Add(iboCart2);

            //Shopping Cart 3
            boCart iboCart3 = new boCart();

            iboCart3.AddProduct("PF02");
            iboCart3.AddProduct("PF03");
            iboCart3.AddProduct("MD04");
            iboCart3.AddProduct("FD03");
            lclcCart.Add(iboCart3);

            Assert.AreEqual(169.66m, TaxHelper.RoundingRule(lclcCart.Sum(x => x.idecTotalAmt)));
        }
Ejemplo n.º 11
0
        public static IList <BasketItem> GetNonShippingItems(Basket basket)
        {
            IList <BasketItem> nonShippingItems = new List <BasketItem>();

            foreach (BasketItem item in basket.Items)
            {
                if (DisplayItemForShipment(item, 0))
                {
                    nonShippingItems.Add(item);
                }
            }

            //SHOW TAXES IF SPECIFIED FOR LINE ITEM DISPLAY
            if (TaxHelper.GetEffectiveInvoiceDisplay(basket.User) == TaxInvoiceDisplay.LineItem)
            {
                // LOOP ALL BASKET ITEMS
                foreach (BasketItem item in basket.Items)
                {
                    // ONLY EXAMINE TAX ITEMS
                    if (item.OrderItemType == OrderItemType.Tax)
                    {
                        // DETERMINE THE PARENT ITEM
                        BasketItem parentItem = GetTaxParentItemForShipping(item);
                        // DISPLAY TAX IF PARENT IS DISPLAYED OR IF THIS IS NOT A CHILD ITEM AND IS NOT PART OF ANY SHIPMENT
                        if (nonShippingItems.IndexOf(parentItem.Id) > -1 ||
                            (!item.IsChildItem && item.ShipmentId == 0))
                        {
                            nonShippingItems.Add(item);
                        }
                    }
                }
            }
            nonShippingItems.Sort(new BasketItemComparer());
            return(nonShippingItems);
        }
Ejemplo n.º 12
0
        public void CalculateTaxOnImportedPerfumeProduct()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("PF01");

            Assert.AreEqual(7.15m, TaxHelper.RoundingRule(iboCart.idecTotalTaxAmt));
        }
Ejemplo n.º 13
0
        public ActionResult Edit(string id)
        {
            TaxModel model = TaxHelper.GetTax(id);

            model.TaxDetails  = TaxHelper.GetTaxDetail(id);
            SessionHelper.Tax = model;
            return(View(model));
        }
Ejemplo n.º 14
0
        public void GetTaxResultTest_Income_5530000_Tax_1382400()
        {
            decimal income   = 5530000;
            decimal actual   = TaxHelper.GetTaxResult(income);
            decimal expected = 1382400;

            Assert.AreEqual(expected, actual);
        }
Ejemplo n.º 15
0
        public void CalculateTaxOnImportedMusicProduct()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("MS03");

            Assert.AreEqual(2.85m, TaxHelper.RoundingRule(iboCart.idecTotalTaxAmt));
        }
Ejemplo n.º 16
0
        public void GetTaxResultTest_Income_540001_Tax_27000p12()
        {
            decimal income   = 540001;
            decimal actual   = TaxHelper.GetTaxResult(income);
            decimal expected = 27000.12m;

            Assert.AreEqual(expected, actual);
        }
Ejemplo n.º 17
0
        public void GetTaxResultTest_Income_2500000_Tax_373400()
        {
            decimal income   = 2500000;
            decimal actual   = TaxHelper.GetTaxResult(income);
            decimal expected = 373400;

            Assert.AreEqual(expected, actual);
        }
Ejemplo n.º 18
0
        public void TaxHelper_Gets_TaxRates()
        {
            var     client  = new TaxjarApi(GetKey());
            decimal TaxRate = TaxHelper.GetRateByZipCode("07001", "US", "Avenel");

            Console.WriteLine(TaxRate);
            Assert.AreEqual(0.06625, TaxRate);
        }
Ejemplo n.º 19
0
        public void CalculateTaxOnNonImportedBookProduct()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("FD01");

            Assert.AreEqual(0m, TaxHelper.RoundingRule(iboCart.idecTotalTaxAmt));
        }
Ejemplo n.º 20
0
        async protected override void OnAppearing()
        {
            base.OnAppearing();

            var car   = BindingContext as Car;
            var taxes = await TaxHelper.GetTaxes(car);

            TaxesListView.ItemsSource = taxes;
        }
Ejemplo n.º 21
0
        public ZBKViewModel EditCopy(Guid ZBKCopyId)
        {
            ZBKViewModel model   = new ZBKViewModel();
            OBK_ZBKCopy  zbkCopy = AppContext.OBK_ZBKCopy.FirstOrDefault(o => o.Id == ZBKCopyId);

            var stageExpDocument = AppContext.OBK_StageExpDocument.FirstOrDefault(o => o.Id == zbkCopy.OBK_StageExpDocumentId);
            var declaration      = AppContext.OBK_AssessmentDeclaration.FirstOrDefault(o => o.Id == stageExpDocument.AssessmentDeclarationId);
            var contract         = AppContext.OBK_Contract.FirstOrDefault(o => o.Id == declaration.ContractId);
            var declarantContact = AppContext.OBK_DeclarantContact.FirstOrDefault(o => o.Id == contract.DeclarantContactId);
            var declarant        = AppContext.OBK_Declarant.FirstOrDefault(o => o.Id == contract.DeclarantId);
            var organization     = AppContext.Dictionaries.FirstOrDefault(o => o.Id == declarant.OrganizationFormId);
            var refType          = AppContext.OBK_Ref_Type.FirstOrDefault(o => o.Id == declaration.TypeId);
            var directionPayment = AppContext.OBK_DirectionToPayments.FirstOrDefault(o => o.ZBKCopy_id == ZBKCopyId);
            var cerCompition     = AppContext.OBK_CertificateOfCompletion.FirstOrDefault(o => o.ZBKCopyId == ZBKCopyId);

            if (zbkCopy.StatusId != null)
            {
                var refStatus = AppContext.OBK_Ref_Status.FirstOrDefault(o => o.Id == zbkCopy.StatusId);
                if (refStatus != null)
                {
                    model.refStatus = int.Parse(refStatus.Code);
                }
            }

            model.Declarer = declarantContact.BossLastName + " " + declarantContact.BossFirstName
                             + " " + declarantContact.BossMiddleName;
            model.ConclusionNumber  = stageExpDocument.ExpConclusionNumber;
            model.ContractNumber    = contract.Number;
            model.DeclarationNumber = declaration.Number;
            model.StartDate         = stageExpDocument.ExpStartDate;
            model.ExpireDate        = stageExpDocument.ExpEndDate;
            model.OrganizationName  = organization.Name;
            model.CopyQuantity      = zbkCopy.CopyQuantity;
            model.DeclarationType   = refType.NameRu;
            model.ContractId        = contract.Id;
            model.AttachPath        = zbkCopy.AttachPath;
            model.Id             = zbkCopy.Id;
            model.ExpApplication = stageExpDocument.ExpApplication;
            model.CopyQuantity   = zbkCopy.CopyQuantity;
            model.Notes          = zbkCopy.Notes;
            model.Nds            = TaxHelper.GetNdsRef() + 1;
            model.LetterNumber   = zbkCopy.LetterNumber;
            model.LetterDate     = zbkCopy.LetterDate;
            model.actNumber1C    = (cerCompition != null && cerCompition.ActNumber1C != null && cerCompition.ActReturnedBack == true);

            if (directionPayment != null && directionPayment.ZBKCopy_id != null && directionPayment.InvoiceNumber1C != null)
            {
                var directionSignData = AppContext.OBK_DirectionSignData.FirstOrDefault(o => o.DirectionToPaymentId == directionPayment.Id);
                if (directionSignData != null && directionSignData.ChiefAccountantSign != null)
                {
                    model.PaymentInvoice = true;
                }
            }


            return(model);
        }
Ejemplo n.º 22
0
        public void TaxHelperCalculatesSalesTax()
        {
            decimal amount    = Convert.ToDecimal("16.5");
            decimal shipping  = Convert.ToDecimal("1.5");
            decimal TaxAmount = TaxHelper.calculateTax("US", "07001", "NJ", "Avenel", "305 W Village Dr", "US", "07446", "NJ", "Ramsey", "63 W Main St", amount, shipping);

            Console.WriteLine(TaxAmount);
            Assert.AreEqual(1.093125, TaxAmount);
        }
Ejemplo n.º 23
0
        public void CalculateTotalAmountWithTaxForCart2()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("FD02");
            iboCart.AddProduct("PF01");

            Assert.AreEqual(65.15m, TaxHelper.RoundingRule(iboCart.idecTotalAmt));
        }
Ejemplo n.º 24
0
        private IList <BasketItem> GetBasketItems()
        {
            User           user               = AbleContext.Current.User;
            Basket         basket             = user.Basket;
            IBasketService preCheckoutService = AbleContext.Resolve <IBasketService>();

            preCheckoutService.Combine(basket);
            _DisplayedBasketItems = new List <BasketItem>();
            foreach (BasketItem item in basket.Items)
            {
                if (Array.IndexOf(displayItemTypes, item.OrderItemType) > -1)
                {
                    if (item.OrderItemType == OrderItemType.Product && item.IsChildItem)
                    {
                        // WHETHER THE CHILD ITEM DISPLAYS DEPENDS ON THE ROOT
                        BasketItem rootItem = item.GetParentItem(true);
                        if (rootItem != null && rootItem.Product != null && rootItem.Product.Kit != null && rootItem.Product.Kit.ItemizeDisplay)
                        {
                            // ITEMIZED DISPLAY ENABLED, SHOW THIS CHILD ITEM
                            _DisplayedBasketItems.Add(item);
                        }
                    }
                    else
                    {
                        // NO ADDITIONAL CHECK REQUIRED TO INCLUDE ROOT PRODUCTS OR NON-PRODUCTS
                        _DisplayedBasketItems.Add(item);
                    }
                }
            }
            // ADD IN ANY CHILD ITEMS

            //ADD IN TAX ITEMS IF SPECIFIED FOR DISPLAY
            if (TaxHelper.GetEffectiveShoppingDisplay(user) == TaxShoppingDisplay.LineItem)
            {
                foreach (BasketItem item in basket.Items)
                {
                    //IS THIS A TAX ITEM?
                    if (item.OrderItemType == OrderItemType.Tax)
                    {
                        ////IS THE TAX ITEM A PARENT ITEM OR A CHILD OF A DISPLAYED ITEM?
                        //if (!item.IsChildItem || (_DisplayedBasketItems.IndexOf(item.ParentItemId) > -1))
                        //{
                        //TAX SHOULD BE SHOWN
                        _DisplayedBasketItems.Add(item);
                        //}
                    }
                }
            }

            // COMBINE ORDER COUPON ITEMS
            _DisplayedBasketItems = _DisplayedBasketItems.CombineOrderCoupons();

            //SORT ITEMS TO COMPLETE INTITIALIZATION
            _DisplayedBasketItems.Sort(new BasketItemComparer());
            return(_DisplayedBasketItems);
        }
Ejemplo n.º 25
0
        public void CalculateTotalAmountWithTaxForCart1()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("BK01");
            iboCart.AddProduct("MS01");
            iboCart.AddProduct("FD01");

            Assert.AreEqual(29.83m, TaxHelper.RoundingRule(iboCart.idecTotalAmt));
        }
Ejemplo n.º 26
0
        public decimal CalcTotalTax(List <Product> prodList)
        {
            decimal totalTax = 0.0m;

            foreach (Product p in prodList)
            {
                totalTax += (p.TaxedCost - p.Price);
            }

            return(TaxHelper.Truncate(totalTax));
        }
Ejemplo n.º 27
0
        public decimal CalcTotalAmount(List <Product> prodList)
        {
            decimal totalAmount = 0.0m;

            foreach (Product p in prodList)
            {
                totalAmount += p.TaxedCost;
            }

            return(TaxHelper.Truncate(totalAmount));
        }
Ejemplo n.º 28
0
        protected decimal GetBasketSubtotal()
        {
            decimal basketTotal = 0;

            foreach (BasketItem bi in _DisplayedBasketItems)
            {
                basketTotal += TaxHelper.GetShopExtendedPrice(AbleContext.Current.User.Basket, bi);
            }

            return(basketTotal);
        }
Ejemplo n.º 29
0
        public void CalculateTotalAmountWithTaxForCart3()
        {
            boCart iboCart = new boCart();

            iboCart.AddProduct("PF02");
            iboCart.AddProduct("PF03");
            iboCart.AddProduct("MD04");
            iboCart.AddProduct("FD03");

            Assert.AreEqual(74.68m, TaxHelper.RoundingRule(iboCart.idecTotalAmt));
        }
Ejemplo n.º 30
0
        /// <summary>
        /// расчет стоимости копий ЗБК с НДС
        public decimal GetTotalPriceZbkCopy(Guid copyId)
        {
            var copy          = AppContext.OBK_ZBKCopy.FirstOrDefault(o => o.Id == copyId);
            var refType       = AppContext.OBK_Ref_Type.FirstOrDefault(o => o.Code == "5");
            var ref_PriceList = AppContext.OBK_Ref_PriceList.FirstOrDefault(o => o.TypeId == refType.Id);

            if (copy.ExpApplication == false)
            {
                return(Math.Round(Convert.ToDecimal(TaxHelper.GetCalculationTax(ref_PriceList.Price) * copy.CopyQuantity * 2), 2));
            }
            return(Math.Round(Convert.ToDecimal(TaxHelper.GetCalculationTax(ref_PriceList.Price) * copy.CopyQuantity), 2));
        }