Esempio n. 1
0
        /// <summary>
        /// Добавление позиции в открытый фискальный чек
        /// </summary>
        /// <param name="name">Наименование предмета расчета</param>
        /// <param name="price">Цена единицы предмета расчета</param>
        /// <param name="quantity">Количество предмета расчета</param>
        /// <param name="watType">Налоговая ставка</param>
        /// <param name="paymentMethodType">Способ расчета</param>
        /// <param name="paymentObjectType">Тип предмета расчета</param>
        public AddPositionToOpenedCheckOperation(string name, decimal price, double quantity, WatType watType,
                                                 PaymentMethodType paymentMethodType, PaymentObjectType paymentObjectType) : base("AddGoods")
        {
            if (name.IsNullOrEmptyOrWhiteSpace())
            {
                throw new ArgumentException(
                          string.Format(
                              ErrorStrings.ResourceManager.GetString("StringFormatError"),
                              this.GetType().GetProperty(nameof(ProductName)).GetDisplayName()),
                          nameof(name));
            }

            if (price < 0 || price > 21474836)
            {
                throw new ArgumentException(
                          string.Format(ErrorStrings.ResourceManager.GetString("DigitRangeValuesError"),
                                        this.GetType().GetProperty(nameof(Price)).GetDisplayName(), 0, 21474836),
                          nameof(price));
            }

            if (quantity < 0.001 || quantity > 214748)
            {
                throw new ArgumentException(
                          string.Format(ErrorStrings.ResourceManager.GetString("DigitRangeValuesError"),
                                        this.GetType().GetProperty(nameof(Qty)).GetDisplayName(), 0.001, 214748),
                          nameof(quantity));
            }

            ProductName     = name;
            Price           = price;
            Qty             = quantity;
            TaxCode         = watType;
            PaymentFormCode = paymentMethodType;
            ProductTypeCode = paymentObjectType;
        }
Esempio n. 2
0
 /// <summary>
 /// Налог
 /// </summary>
 /// <param name="type">Налоговая ставка</param>
 public TaxParams(WatType type)
 {
     Type = type;
 }