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)); }
public PeriodDeprItemDto Depreciate([FromQuery] DateTime runDate, [FromBody] DepreciableBookDto deprBook) { if (!runDate.IsValid()) { runDate = DateTime.Now; } var periodDeprItemDto = _calculationService.CalculateDepreciation(deprBook, runDate); return(periodDeprItemDto); }
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); }
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); }
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); }
public List <PeriodDeprItemDto> Project([FromBody] DepreciableBookDto deprBook) { var periodDeprItemDto = _calculationService.CalculateProjection(deprBook); return(periodDeprItemDto); }