Esempio n. 1
0
        public PeriodDeprItemDto CalculateDepreciation(DepreciableBookDto deprBook, DateTime runDate)
        {
            IBAPeriodDeprItem   pdItem           = GetPeriodDeprItem();
            IBADeprScheduleItem deprScheduleItem = transformDepreciableBookDtoToDeprScheduleItem(deprBook);

            IBAPeriodDetailDeprInfo periodDetails = _calcEngine.CalculateDepreciation(deprScheduleItem, ref pdItem, runDate);

            return(transformPeriodDeprItemToDto(periodDetails));
        }
Esempio n. 2
0
        public PeriodDeprItemDto Depreciate([FromQuery] DateTime runDate, [FromBody] DepreciableBookDto deprBook)
        {
            if (!runDate.IsValid())
            {
                runDate = DateTime.Now;
            }

            var periodDeprItemDto = _calculationService.CalculateDepreciation(deprBook, runDate);

            return(periodDeprItemDto);
        }
Esempio n. 3
0
        private IBADeprScheduleItem transformDepreciableBookDtoToDeprScheduleItem(DepreciableBookDto deprBook)
        {
            IBADeprScheduleItem deprScheduleItem = GetDeprScheduleItem();

            deprScheduleItem.PropertyType        = (short)PropertyTypeCode.translateShortNameToType(deprBook.PropertyType).Type;
            deprScheduleItem.PlacedInServiceDate = deprBook.PlaceInServiceDate;
            deprScheduleItem.AcquisitionValue    = deprBook.AcquiredValue;
            deprScheduleItem.DeprMethod          = deprBook.DepreciateMethod;
            deprScheduleItem.DeprPercent         = deprBook.DepreciatePercent;
            deprScheduleItem.DeprLife            = deprBook.EstimatedLife;

            return(deprScheduleItem);
        }
Esempio n. 4
0
        public List <PeriodDeprItemDto> CalculateMonthlyProjection(DepreciableBookDto deprBook, DateTime startDate, DateTime endDate)
        {
            IBAPeriodDeprItem              pdItem           = GetPeriodDeprItem();
            IBADeprScheduleItem            deprScheduleItem = transformDepreciableBookDtoToDeprScheduleItem(deprBook);
            List <IBAPeriodDetailDeprInfo> objPDItems       = null;

            bool isCalculateProjectionSuccess = _calcEngine.CalculateMonthlyProjection(deprScheduleItem, ref pdItem, startDate, endDate, out objPDItems);

            if (isCalculateProjectionSuccess)
            {
                return(objPDItems.Select(item => transformPeriodDeprItemToDto(item)).ToList());
            }

            return(null);
        }
Esempio n. 5
0
        public List <PeriodDeprItemDto> MonthlyProject([FromQuery] DateTime startDate, [FromQuery] DateTime endDate, [FromBody] DepreciableBookDto deprBook)
        {
            if (!startDate.IsValid())
            {
                startDate = DateTime.Now;
            }

            if (!endDate.IsValid())
            {
                endDate = startDate.AddDays(365);
            }

            var periodDeprItemDto = _calculationService.CalculateMonthlyProjection(deprBook, startDate, endDate);

            return(periodDeprItemDto);
        }
Esempio n. 6
0
        public List <PeriodDeprItemDto> Project([FromBody] DepreciableBookDto deprBook)
        {
            var periodDeprItemDto = _calculationService.CalculateProjection(deprBook);

            return(periodDeprItemDto);
        }