Example #1
0
        public SynthOrderBookLine(SynthOrderBook synthOrderBook, VolumePrice volumePrice)
        {
            Debug.Assert(synthOrderBook != null);

            Price          = volumePrice.Price;
            Volume         = volumePrice.Volume;
            SynthOrderBook = synthOrderBook;
        }
        public void ReciprocalTest()
        {
            var volumePrice = new VolumePrice(8999.95m, 7);
            var reciprocal  = volumePrice.Reciprocal();

            Assert.Equal(reciprocal.Price, 1 / 8999.95m);
            Assert.Equal(reciprocal.Volume, 8999.95m * 7);
        }
Example #3
0
        public void When_SetMinimalCount_Expected_GetSameMinimalCount()
        {
            uint initialValue = 100;
            var  priceInfo    = new VolumePrice {
                MinimalVolume = initialValue
            };

            Assert.That(priceInfo.MinimalVolume, Is.EqualTo(initialValue));
        }
        public void When_GetVolumePriceForNotExistProduct_Expected_nullInResult()
        {
            decimal initialVolumePrice  = 8.99m;
            uint    initialMinimalCount = 5;
            string  initialProduct      = "Tort";
            Pricing pricing             = new Pricing();

            pricing.SetVolumePrice(initialProduct, initialVolumePrice, initialMinimalCount);

            VolumePrice productPrice = pricing.GetVolumePrice("D");

            Assert.That(productPrice, Is.Null);
        }
Example #5
0
        /// <summary>
        /// Method for set volume price and minimal count of products
        /// </summary>
        public void SetVolumePrice(string productCode, decimal productVolumePrice, uint minimalVolume)
        {
            var productPriceInfo = new VolumePrice
            {
                Value         = productVolumePrice,
                MinimalVolume = minimalVolume
            };

            if (volumePrices.ContainsKey(productCode))
            {
                volumePrices[productCode] = productPriceInfo;
            }
            else
            {
                volumePrices.Add(productCode, productPriceInfo);
            }
        }
Example #6
0
 public ProductPrice(string productCode, decimal price, VolumePrice volumePrice)
 {
     ProductCode = productCode;
     Price       = price;
     VolumePrice = volumePrice;
 }
Example #7
0
        public string VolumePriceName(VolumePrice volumePrice)
        {
            string priceName = "";

            switch (volumePrice)
            {
            case VolumePrice.GAIN_PRICE:
                priceName = "개인";
                break;

            case VolumePrice.FORE_PRICE:
                priceName = "외인";
                break;

            case VolumePrice.GIGAN_PRICE:
                priceName = "기관";
                break;

            case VolumePrice.GUMY_PRICE:
                priceName = "금융";
                break;

            case VolumePrice.BOHUM_PRICE:
                priceName = "보험";
                break;

            case VolumePrice.TOSIN_PRICE:
                priceName = "투신";
                break;

            case VolumePrice.GITA_PRICE:
                priceName = "기금";
                break;

            case VolumePrice.BANK_PRICE:
                priceName = "은행";
                break;

            case VolumePrice.YEONGI_PRICE:
                priceName = "연기금";
                break;

            case VolumePrice.SAMO_PRICE:
                priceName = "사모";
                break;

            case VolumePrice.NATION_PRICE:
                priceName = "국가";
                break;

            case VolumePrice.BUBIN_PRICE:
                priceName = "법인";
                break;

            case VolumePrice.IOFORE_PRICE:
                priceName = "내외";
                break;

            case VolumePrice.GIGAN_SUM_PRICE:
                priceName = "기관합";
                break;

            default:
                break;
            }

            return(priceName);
        }