Example #1
0
        public async Task <int> CreateFundAsync(FundCreateRequest fundCreateRequest)
        {
            Company company = null;

            if (fundCreateRequest.CompanyId != 0)
            {
                company = await this.galaxisContext.Companies.FindAsync(fundCreateRequest.CompanyId);
            }

            int result = 0;

            if (company != null)
            {
                var fund = CreateDataModelFund(fundCreateRequest, company);
                AssignFundToCompany(company, fund);

                this.galaxisContext.Funds.Add(fund);
                result = await this.galaxisContext.SaveChangesAsync();
            }

            return(result);
        }
Example #2
0
 private static DataModelFund CreateDataModelFund(FundCreateRequest fundCreateRequest, Company company)
 {
     return(new DataModelFund
     {
         Name = fundCreateRequest.Name,
         FundAddress = fundCreateRequest.Address,
         InvestmentFundManager = fundCreateRequest.InvestmentFundManager,
         InvestmentFocus = fundCreateRequest.InvestmentFocus,
         HighWaterMark = fundCreateRequest.HighWaterMark,
         HurdleRate = fundCreateRequest.HurdleRate,
         HurdleRatePercentage = fundCreateRequest.HurdleRatePercentage,
         DepositStartTimeStamp = fundCreateRequest.DepositStartTimeStamp,
         DepositCloseTimeStamp = fundCreateRequest.DepositCloseTimeStamp,
         CloseTimeStamp = fundCreateRequest.CloseTimeStamp,
         BaseCurrency = fundCreateRequest.BaseCurrency,
         MinimumContribution = fundCreateRequest.MinimumContribution,
         MaximumContribution = fundCreateRequest.MaximumContribution,
         IsLaunched = false,
         Company = company,
         CompanyId = company.Id
     });
 }
Example #3
0
 public async Task <int> CreateFundAsync([FromBody] FundCreateRequest fundCreateRequest)
 {
     return(await this.fundRepository.CreateFundAsync(fundCreateRequest));
 }