public int InsertReturnSeries(ReturnSeriesDto returnSeries)
        {
            const string sql = @"
INSERT INTO [ReturnSeries]
           ([InvestmentVehicleNumber]
           ,[FeeTypeCode])
     VALUES
           (@InvestmentVehicleNumber
           ,@FeeTypeCode)

SELECT CAST(SCOPE_IDENTITY() as int)
";

            int newId = 0;

            ConnectionExecuteWithLog(
                connection =>
            {
                newId = connection.Query <int>(sql, returnSeries).Single();
            },
                sql,
                returnSeries);

            return(newId);
        }
Example #2
0
        private static MonthlyReturnDto[] CreateTestMonthlyReturns(
            ReturnSeriesDto returnSeries)
        {
            var monthlyReturnList = new List <MonthlyReturnDto>();

            monthlyReturnList.Add(new MonthlyReturnDto()
            {
                Year           = 2000,
                Month          = 1,
                ReturnValue    = 0.1m,
                ReturnSeriesId = returnSeries.ReturnSeriesId
            });
            monthlyReturnList.Add(new MonthlyReturnDto()
            {
                Year           = 2000,
                Month          = 2,
                ReturnValue    = 0.2m,
                ReturnSeriesId = returnSeries.ReturnSeriesId
            });
            monthlyReturnList.Add(new MonthlyReturnDto()
            {
                Year           = 2000,
                Month          = 3,
                ReturnValue    = 0.3m,
                ReturnSeriesId = returnSeries.ReturnSeriesId
            });

            var monthlyReturns = monthlyReturnList.ToArray();

            return(monthlyReturns);
        }
        public Maybe <ReturnSeriesDto> GetReturnSeries(int returnSeriesId)
        {
            const string sql = @"
SELECT
        [ReturnSeriesId]
        ,[InvestmentVehicleNumber]
        ,[FeeTypeCode]
    FROM
        [ReturnSeries]
    WHERE
        ReturnSeriesId = @ReturnSeriesId";

            ReturnSeriesDto result = null;

            var paramObject = new { ReturnSeriesId = returnSeriesId };

            ConnectionExecuteWithLog(
                connection =>
            {
                result = connection.Query <ReturnSeriesDto>(sql, paramObject).FirstOrDefault();
            },
                sql);

            if (result == null)
            {
                return(Maybe <ReturnSeriesDto> .None);
            }

            return(Maybe <ReturnSeriesDto> .Some(result));
        }
        public void GetEntitiesWithReturnSeriesShouldMapSingleEntityAndSingleReturnSeries()
        {
            var testHelper = new EntityReturnsRepositoryTestHelper();

            testHelper
            .SetupGetAllEntities(c => c.AddPortfolio(100, "Port100"));

            testHelper.AddReturnSeriesDto(ReturnSeriesDto.CreateForNetOfFees(1000, 100));

            var repository = testHelper.CreateEntityReturnsRepository();

            var results = repository.GetAllInvestmentVehicles();

            var expectedEntity = new InvestmentVehicle()
            {
                Number = 100,
                Name   = "Port100",
                InvestmentVehicleType = InvestmentVehicleType.Portfolio
            };

            expectedEntity.AddReturnSeries(new MonthlyReturnSeries()
            {
                ReturnSeriesId = 1000, FeeType = FeeType.NetOfFees
            });

            Assert.Equal(results[0], expectedEntity);
        }
Example #5
0
        private void AssertReturnSeriesRecordIsValid(
            Maybe <ReturnSeriesDto> savedReturnSeries,
            ReturnSeriesDto expectedReturnSeries)
        {
            Assert.True(savedReturnSeries.HasValue);

            Assert.Equal(savedReturnSeries.Value.ReturnSeriesId, expectedReturnSeries.ReturnSeriesId);
            Assert.Equal(savedReturnSeries.Value.InvestmentVehicleNumber, expectedReturnSeries.InvestmentVehicleNumber);
            Assert.Equal(savedReturnSeries.Value.FeeTypeCode, expectedReturnSeries.FeeTypeCode);
        }
Example #6
0
        private void AssertReturnSeriesRecordIsValid(
            ReturnSeriesDto savedReturnSeries,
            ReturnSeriesDto expectedReturnSeries)
        {
            Assert.NotNull(savedReturnSeries);

            Assert.Equal(savedReturnSeries.ReturnSeriesId, expectedReturnSeries.ReturnSeriesId);
            Assert.Equal(savedReturnSeries.InvestmentVehicleNumber, expectedReturnSeries.InvestmentVehicleNumber);
            Assert.Equal(savedReturnSeries.FeeTypeCode, expectedReturnSeries.FeeTypeCode);
        }
        public ReturnSeriesDtoCollectionForTests AddNetOfGrossReturnSeries(
            int returnSeriesId,
            int entityNumber)
        {
            var n = ReturnSeriesDto.CreateForGrossOfFees(returnSeriesId, entityNumber);

            _returnSeriesDtoList.Add(n);

            return(this);
        }
Example #8
0
        private ReturnSeriesDto InsertTestReturnSeries()
        {
            var returnSeries = new ReturnSeriesDto();

            returnSeries.InvestmentVehicleNumber = 100;
            returnSeries.FeeTypeCode             = 'N';

            var newId = _returnsSeriesDataGateway.InsertReturnSeries(returnSeries);

            returnSeries.ReturnSeriesId = newId;

            return(returnSeries);
        }
        private MonthlyReturnDto CreateMonthlyReturn(
            ReturnSeriesDto series,
            CitiMonthlyReturnsDataFileRecord sourceMonthlyReturn)
        {
            var monthlyReturn = new MonthlyReturnDto();

            monthlyReturn.ReturnSeriesId = series.ReturnSeriesId;
            monthlyReturn.Month          = sourceMonthlyReturn.GetMonth();
            monthlyReturn.Year           = sourceMonthlyReturn.GetYear();
            monthlyReturn.ReturnValue    = sourceMonthlyReturn.GetDecimalValue();

            return(monthlyReturn);
        }
Example #10
0
        private MonthlyReturnSeries CreateReturnSeries(
            ReturnSeriesDto r)
        {
            var returnSeries = new MonthlyReturnSeries()
            {
                ReturnSeriesId = r.ReturnSeriesId,
                FeeType        = FeeType.FromCode(r.FeeTypeCode)
            };

            var returnsForSeries = _monthlyReturnDtos
                                   .Where(d => d.ReturnSeriesId == r.ReturnSeriesId);

            returnSeries.AddReturns(
                returnsForSeries.Select(CreateMonthlyReturn));

            return(returnSeries);
        }
 public int InsertReturnSeries(ReturnSeriesDto returnSeries)
 {
     _returnSeriesDtos.Add(returnSeries);
     _index++;
     return(_index);
 }
 public virtual int InsertReturnSeries(ReturnSeriesDto returnSeries)
 {
     return(0);
 }
 public void AddReturnSeriesDto(
     ReturnSeriesDto dto)
 {
     _returnsSeriesDataGatewayStub.InsertReturnSeries(dto);
 }