Example #1
0
 public static DataSet GetTradeableInstruments(
     SecCategoryFilterOptions secCategoryFilter, string isin, string instrumentName,
     SecCategories secCategoryId, int exchangeId, int currencyNominalId,
     ActivityReturnFilter activityFilter, string propertyList)
 {
     return GetTradeableInstruments(
                 secCategoryFilter, isin, instrumentName, secCategoryId,
                 exchangeId, currencyNominalId, activityFilter, true, null, propertyList);
 }
Example #2
0
        public static List<IInternalEmployeeLogin> GetEmployees(IDalSession session, ActivityReturnFilter activityFilter)
        {
            List<ICriterion> expressions = new List<ICriterion>();

            if (activityFilter != ActivityReturnFilter.All)
                expressions.Add(Expression.Eq("IsActive", activityFilter == ActivityReturnFilter.Active));

            return session.GetTypedList<InternalEmployeeLogin, IInternalEmployeeLogin>(expressions);
        }
Example #3
0
        /// <summary>
        /// Get lifecycle by ID
        /// </summary>
        /// <param name="session">Data access object</param>
        /// <param name="assetManagerId">Identifier</param>
        /// <param name="activityFilter">Identifier</param>
        /// <returns>List of Lifecycle objects</returns>
        public static IList<ILifecycle> GetLifecycles(IDalSession session, int assetManagerId, ActivityReturnFilter activityFilter)
        {
            Hashtable parameters = new Hashtable();
            if (assetManagerId != 0)
                parameters.Add("managementCompanyID", assetManagerId);

            if (activityFilter != ActivityReturnFilter.All)
                parameters.Add("isActive", (activityFilter == ActivityReturnFilter.Active ? true : false));

            return session.GetTypedListByNamedQuery<ILifecycle>(
                "B4F.TotalGiro.Instruments.Lifecycles",
                parameters);
        }
Example #4
0
        /// <summary>
        /// Get all system models
        /// </summary>
        /// <param name="session">Data access object</param>
        /// <param name="includePublic">Include Public Models</param>
        /// <param name="activityFilter">Active Filter</param>
        /// <returns>Collection of models</returns>
        public static List<IPortfolioModel> GetModels(IDalSession session, bool includePublic, ActivityReturnFilter activityFilter)
        {
            List<ICriterion> expressions = new List<ICriterion>();
            List<Order> orderings = new List<Order>();
            orderings.Add(Order.Asc("ModelName"));

            addAssetManagerCriterion(expressions, getForcedAssetManagerId(session, null), includePublic);

            if (activityFilter != ActivityReturnFilter.All)
                expressions.Add(Expression.Eq("IsActive", (activityFilter == ActivityReturnFilter.Active ? true : false)));

            return session.GetTypedList<PortfolioModel, IPortfolioModel>(expressions, orderings, null, null);
        }
Example #5
0
 public static IList<IWithdrawalRule> GetWithdrawalRules(IDalSession session, int accountID, ActivityReturnFilter activityFilter)
 {
     List<ICriterion> expressions = new List<ICriterion>();
     IAccountTypeCustomer acc = (IAccountTypeCustomer)AccountMapper.GetAccount(session, accountID);
     if (acc != null)
     {
         expressions.Add(Expression.Eq("Account.Key", acc.Key));
         if (activityFilter != ActivityReturnFilter.All)
             expressions.Add(Expression.Eq("IsActive", (activityFilter == ActivityReturnFilter.Active ? true : false)));
         return session.GetTypedList<WithdrawalRule, IWithdrawalRule>(expressions);
     }
     else
         return null;
 }
Example #6
0
        public static List<IRemisier> GetRemisiers(IDalSession session, IAssetManager assetManager, string remisierName,
                                                   ActivityReturnFilter activityFilter)
        {
            bool loggedInAsStichting = LoginMapper.IsLoggedInAsStichting(session);
            if (assetManager == null && !loggedInAsStichting)
                assetManager = (IAssetManager)LoginMapper.GetCurrentManagmentCompany(session);

            if (assetManager != null || loggedInAsStichting)
            {
                int assetManagerId = assetManager != null ? assetManager.Key : 0;
                return GetRemisiers(session, assetManagerId, remisierName, activityFilter);
            }
            else
                return null;
        }
 public static DataSet GetFilteredInstruments(
     InstrumentCurrentPricesAdapter.DataSourceChoices secCatChoice, string isin, 
     string instrumentName, int currencyNominalId, ActivityReturnFilter activityFilter)
 {
     using (IDalSession session = NHSessionFactory.CreateSession())
     {
         DataSet ds = null;
         switch (secCatChoice)
         {
             case InstrumentCurrentPricesAdapter.DataSourceChoices.InstrumentsTradeable:
                 ds = InstrumentMapper.GetTradeableInstruments(
                     session, SecCategoryFilterOptions.Securities,
                     isin, instrumentName, 0, 0, currencyNominalId, false, activityFilter, "")
                     .Select(c => new
                     {
                         c.Key,
                         Description = c.DisplayIsinWithName
                     })
                     .ToDataSet();
                 break;
             case InstrumentCurrentPricesAdapter.DataSourceChoices.Currencies:
                 ds = InstrumentMapper.GetCurrenciesByName(
                     session, isin, instrumentName, activityFilter)
                     .Where(x => !x.IsBase)
                     .Select(c => new
                     {
                         c.Key,
                         Description = c.Symbol + " - " + c.Name
                     })
                     .ToDataSet();
                 break;
             case InstrumentCurrentPricesAdapter.DataSourceChoices.BenchMarks:
                 ds = InstrumentMapper.GetBenchMarks(
                     session, isin, instrumentName, currencyNominalId, activityFilter)
                     .Select(c => new
                     {
                         c.Key,
                         Description = c.DisplayIsinWithName
                     })
                     .ToDataSet();
                 break;
         }
         Utility.AddEmptyFirstRow(ds.Tables[0]);
         return ds;
     }
 }
Example #8
0
        public static List<IRemisierEmployee> GetRemisierEmployees(IDalSession session, int remisierId, ActivityReturnFilter activityFilter)
        {
            IQueryable<RemisierEmployee> remisierEmployees = session.Session.Linq<RemisierEmployee>()
                                                                            .Where(re => re.Remisier.IsActive);

            if (remisierId != 0)
                remisierEmployees = remisierEmployees.Where(re => re.Remisier.Key == remisierId);

            if (activityFilter == ActivityReturnFilter.Active)
                remisierEmployees = remisierEmployees.Where(re => re.IsActive);
            else if (activityFilter == ActivityReturnFilter.InActive)
                remisierEmployees = remisierEmployees.Where(re => !re.IsActive);

            return remisierEmployees.OrderBy(re => re.Employee.LastName)
                                    .Cast<IRemisierEmployee>()
                                    .ToList();
        }
Example #9
0
        public static IList<IBenchMark> GetBenchMarks(
            IDalSession session, string isin, string instrumentName, 
            int currencyNominalId, ActivityReturnFilter activityFilter)
        {
            Hashtable parameters = new Hashtable();

            if (!string.IsNullOrEmpty(isin))
                parameters.Add("isin", Util.PrepareNamedParameterWithWildcard(isin, MatchModes.Anywhere));
            if (!string.IsNullOrEmpty(instrumentName))
                parameters.Add("instrumentName", Util.PrepareNamedParameterWithWildcard(instrumentName, MatchModes.Anywhere));
            if (currencyNominalId > 0)
                parameters.Add("currencyNominalId", currencyNominalId);
            if (activityFilter != ActivityReturnFilter.All)
                parameters.Add("isActive", activityFilter == ActivityReturnFilter.Active);
            return session.GetTypedListByNamedQuery<IBenchMark>(
                "B4F.TotalGiro.Instruments.Instrument.GetBenchmarks",
                parameters);
        }
        public static DataSet GetHistoricalBenchMarks(DateTime date,
            string isin, string instrumentName, int currencyNominalId,
            ActivityReturnFilter activityFilter)
        {
            IDalSession session = NHSessionFactory.CreateSession();

            IList<IBenchMark> instruments = InstrumentMapper.GetBenchMarks(
                session, isin, instrumentName, currencyNominalId, activityFilter);
            DataSet historicalPriceDs = HistoricalPriceMapper.GetHistoricalPrices(session, date)
                    .Select(c => new
                    {
                        Price_Key =
                            c.Price.Instrument.Key,
                        Price_Amount =
                            c.Price.Amount.Quantity
                    })
                    .ToDataSet();

            int i = 0;
            InstrumentPriceRowView[] instrumentPriceRowViews = new InstrumentPriceRowView[instruments.Count];
            foreach (IBenchMark instrument in instruments)
            {
                DataRow[] historicalPriceRows = historicalPriceDs.Tables[0].Select(string.Format("Price_Key = {0}", instrument.Key));
                decimal priceQuantity = (historicalPriceRows.Length > 0 ? (decimal)historicalPriceRows[0]["Price_Amount"] : 0m);
                instrumentPriceRowViews[i++] = new InstrumentPriceRowView(instrument, priceQuantity);
            }

            DataSet ds = instrumentPriceRowViews
                    .Select(c => new
                    {
                        c.InstrumentId,
                        c.Isin,
                        c.InstrumentName,
                        c.Currency,
                        c.PriceQuantity,
                        c.DecimalPlaces
                    })
                    .ToDataSet();
            session.Close();
            return ds;
        }
        public static DataSet GetHistoricalCurrencyRates(DateTime date, 
            string currencyName, string instrumentName, ActivityReturnFilter activityFilter)
        {
            IDalSession session = NHSessionFactory.CreateSession();

            IList<ICurrency> currencies = InstrumentMapper.GetCurrenciesByName(
                session, currencyName, instrumentName, activityFilter)
                .Where(x => !x.IsBase)
                .ToList();
            DataSet historicalRateDs = HistoricalExRateMapper.GetHistoricalExRates(session, date)
                .Select(c => new
                {
                    Currency_Key =
                        c.Currency.Key,
                    c.Rate
                })
                .ToDataSet();

            int i = 0;
            CurrencyRateRowView[] currencyRateRowViews = new CurrencyRateRowView[currencies.Count];
            foreach (Currency currency in currencies)
            {
                DataRow[] historicalRateRows = historicalRateDs.Tables[0].Select(string.Format("Currency_Key = {0}", currency.Key));
                decimal rate = (historicalRateRows.Length > 0 ? (decimal)historicalRateRows[0]["Rate"] : 0m);
                currencyRateRowViews[i++] = new CurrencyRateRowView(currency, rate);
            }

            DataSet ds = currencyRateRowViews
                    .Select(c => new
                    {
                        c.InstrumentId,
                        c.Symbol,
                        c.CountryName,
                        c.AltSymbol,
                        c.Rate
                    })
                    .ToDataSet();
            session.Close();
            return ds;
        }
Example #12
0
 /// <summary>
 /// Get all system models, sorted alphabetically
 /// </summary>
 /// <param name="session">Data access object</param>
 /// <param name="assetManager">The assetManager that owns the model</param>
 /// <param name="includePublic">Include Public Models</param>
 /// <param name="activityFilter">Active Filter</param>
 /// <returns>Collection of models</returns>
 public static List<IPortfolioModel> GetModelsSorted(IDalSession session, IAssetManager assetManager, bool includePublic, bool includeSubModels, ActivityReturnFilter activityFilter)
 {
     return GetModelsSorted(session, assetManager, includePublic, includeSubModels, activityFilter, null);
 }
Example #13
0
        public static IList<ITradeableInstrument> GetTradeableInstruments(IDalSession session, 
            SecCategoryFilterOptions secCategoryFilter, 
            string isin, string instrumentName, SecCategories secCategoryId, 
            int exchangeId, int currencyNominalId, bool assetManagerMappedOnly, 
            ActivityReturnFilter activityFilter, string hqlWhere)
        {
            Hashtable parameters = new Hashtable();

            if (secCategoryFilter != SecCategoryFilterOptions.All)
                parameters.Add("secCategoryType", (int)secCategoryFilter);
            if (!string.IsNullOrEmpty(isin))
                parameters.Add("isin", Util.PrepareNamedParameterWithWildcard(isin, MatchModes.Anywhere));
            if (!string.IsNullOrEmpty(instrumentName))
                parameters.Add("instrumentName", Util.PrepareNamedParameterWithWildcard(instrumentName, MatchModes.Anywhere));
            if (secCategoryId != SecCategories.Undefined)
                parameters.Add("secCategoryId", secCategoryId);
            if (exchangeId > 0)
                parameters.Add("exchangeId", exchangeId);
            if (currencyNominalId > 0)
                parameters.Add("currencyNominalId", currencyNominalId);
            if (activityFilter != ActivityReturnFilter.All)
                parameters.Add("isActive", activityFilter == ActivityReturnFilter.Active);
            if (assetManagerMappedOnly)
            {
                IManagementCompany comp = LoginMapper.GetCurrentManagmentCompany(session);
                if (comp != null && !comp.IsStichting)
                    parameters.Add("managementCompanyID", comp.Key);
            }
            IList<ITradeableInstrument> list = session.GetTypedListByNamedQuery<ITradeableInstrument>(
                "B4F.TotalGiro.Instruments.Instrument.GetTradeableInstruments",
                hqlWhere, parameters);

            if (secCategoryFilter != SecCategoryFilterOptions.CorporateAction)
                list = list.Where(x => x.SecCategory.SecCategoryType != SecCategoryTypes.CorporateAction).ToList();

            return list;
        }
Example #14
0
        /// <summary>
        /// Get currency by name
        /// </summary>
        /// <param name="session">data access object</param>
        /// <param name="currencyName">Name</param>
        /// <param name="instrumentName">Name</param>
        /// <returns>Currency</returns>
        public static IList<ICurrency> GetCurrenciesByName(
            IDalSession session, string currencyName, 
            string instrumentName, ActivityReturnFilter activityFilter)
        {
            List<ICriterion> expressions = new List<ICriterion>();
            expressions.Add(Expression.Like("Symbol", currencyName, MatchMode.Start));
            if (!string.IsNullOrEmpty(instrumentName))
                expressions.Add(Expression.Like("Name", instrumentName, MatchMode.Start));
            if (activityFilter != ActivityReturnFilter.All)
                expressions.Add(Expression.Eq("IsActive", activityFilter == ActivityReturnFilter.Active));

            return session.GetTypedList<Currency, ICurrency>(expressions);
        }
Example #15
0
        /// <summary>
        /// This method does NOT filter by the current asset manager.
        /// </summary>
        public static List<IRemisier> GetRemisiers(IDalSession session, int assetManagerId, string remisierName,
                                                   ActivityReturnFilter activityFilter)
        {
            Hashtable parameters = new Hashtable();

            if (assetManagerId != 0)
                parameters.Add("assetManagerId", assetManagerId);
            if (!string.IsNullOrEmpty(remisierName))
                parameters.Add("remisierName", Util.PrepareNamedParameterWithWildcard(remisierName));
            if (activityFilter != ActivityReturnFilter.All)
                parameters.Add("deleted", activityFilter != ActivityReturnFilter.Active);

            return session.GetTypedListByNamedQuery<IRemisier>(
                                "B4F.TotalGiro.Stichting.Remisier.Remisiers",
                                parameters);
        }
Example #16
0
        public static DataSet GetLifecycles(int assetManagerId, ActivityReturnFilter activityFilter)
        {
            using (IDalSession session = NHSessionFactory.CreateSession())
            {
                if (activityFilter != ActivityReturnFilter.Active)
                    activityFilter = ActivityReturnFilter.All;

                DataSet ds = LifecycleMapper.GetLifecycles(session, assetManagerId, activityFilter)
                    .Select(c => new
                    {
                        c.Key,
                        c.Name
                    })
                    .ToDataSet();
                Utility.AddEmptyFirstRow(ds);
                return ds;
            }
        }
        public static DataSet GetInstructions(int assetManagerId, int modelPortfolioId, string accountNumber, string accountName,
            DateTime dateFrom, DateTime dateTo, ActivityReturnFilter activeStatus, WithdrawalInstructionsTypeReturnEnum returnType,
            int maximumRows, int pageIndex, string sortColumn)
        {
            const string propertyList =
                "Key, Account.Key, Account.Number, Account.ShortName, Status, DisplayStatus, Message, Warning, WithdrawalDate, LatestPossibleFreeUpCashDate, Amount.Quantity, Amount.DisplayString, DisplayRegularity, HasOrders, MoneyTransferOrder.Key, IsEditable, IsActive, CreationDate, DoNotChargeCommission, IsCancellable";

            string bareSortColumn = sortColumn.Split(' ')[0];
            bool ascending = !(sortColumn.Split(' ').Length == 2 && sortColumn.Split(' ')[1] == "DESC");

            IDalSession session = NHSessionFactory.CreateSession();
            DataSet ds = null;

            IList allInstructions;
            if (isHqlSortingNeeded(bareSortColumn))
            {
                allInstructions = GetInstructionsList(session,
                                    assetManagerId, modelPortfolioId, accountNumber, accountName, dateFrom, dateTo, activeStatus, returnType, null, bareSortColumn, ascending, true);
                ds = DataSetBuilder.CreateDataSetFromHibernateList(allInstructions, "Key, IsActive");
            }
            else
            {
                allInstructions = GetInstructionsList(session,
                                    assetManagerId, modelPortfolioId, accountNumber, accountName, dateFrom, dateTo, activeStatus, returnType, null, bareSortColumn, ascending, false);
                ds = DataSetBuilder.CreateDataSetFromBusinessObjectList(allInstructions, "Key, " + bareSortColumn.Replace('_', '.'));
                Util.SortDataTable(ds.Tables[0], sortColumn);

                session.Close();
                session = NHSessionFactory.CreateSession();
            }

            int[] instructionIds = Util.GetPageKeys(ds.Tables[0], maximumRows, pageIndex, "Key");
            IList pageInstructions = GetInstructionsList(session, 0, 0, null, null, DateTime.MinValue, DateTime.MinValue, ActivityReturnFilter.All, WithdrawalInstructionsTypeReturnEnum.All, instructionIds, bareSortColumn, ascending, false);
            DataSetBuilder.MergeDataTableWithBusinessObjectList(ds.Tables[0], pageInstructions, "Key", propertyList);

            session.Close();
            return ds;
        }
Example #18
0
 public static DataSet GetFilteredInstruments(
     string isin, string instrumentName, int currencyNominalId, 
     int secCategoryId, ActivityReturnFilter activityFilter)
 {
     using (IDalSession session = NHSessionFactory.CreateSession())
     {
         DataSet ds = InstrumentMapper.GetTradeableInstruments(
             session, SecCategoryFilterOptions.Securities,
             isin, instrumentName, (SecCategories)secCategoryId, 0,
             currencyNominalId, false, activityFilter, "")
             .Select(c => new
             {
                 c.Key,
                 Description = c.DisplayIsinWithName
             })
             .ToDataSet();
         Utility.AddEmptyFirstRow(ds.Tables[0]);
         return ds;
     }
 }
Example #19
0
        public static DataSet GetModelPortfolios(int assetManagerId, ActivityReturnFilter activityFilter)
        {
            using (IDalSession session = NHSessionFactory.CreateSession())
            {
                DataSet ds = null;
                IAssetManager assetManager = null;

                if (activityFilter != ActivityReturnFilter.Active)
                    activityFilter = ActivityReturnFilter.All;

                if (assetManagerId > 0)
                    assetManager = (IAssetManager)ManagementCompanyMapper.GetAssetManager(session, assetManagerId);

                IList<IPortfolioModel> list = ModelMapper.GetModelsSorted(session, assetManager, true, false, activityFilter);
                if (list != null)
                {
                    ds = list
                        .Select(c => new
                        {
                            c.Key,
                            c.ModelName
                        })
                        .ToDataSet();

                    Utility.AddEmptyFirstRow(ds);
                }
                return ds;
            }
        }
        public static IList GetInstructionsList(IDalSession session, int assetManagerId, int modelPortfolioId, string accountNumber, string accountName,
            DateTime dateFrom, DateTime dateTo, ActivityReturnFilter activeStatus, WithdrawalInstructionsTypeReturnEnum returnType,
            int[] instructionIds, string sortColumn, bool ascending, bool keysOnly)
        {
            string where = "";

            if (assetManagerId > 0)
                where += string.Format(" and A.AccountOwner = {0} ", assetManagerId);
            if (modelPortfolioId > 0)
                where += string.Format(" and M.Key = {0}", modelPortfolioId);
            if (accountNumber != null && accountNumber.Length > 0)
                where += string.Format(" and A.Number LIKE '%{0}%'", accountNumber);
            if (accountName != null && accountName.Length > 0)
                where += string.Format(" and A.ShortName LIKE '%{0}%'", accountName);
            if (dateFrom != DateTime.MinValue || dateTo != DateTime.MinValue)
            {
                if (dateFrom != DateTime.MinValue && dateTo != DateTime.MinValue)
                    where += string.Format(" and I.WithdrawalDate between '{0}' and '{1}'", dateFrom.ToString("yyyy-MM-dd"), dateTo.ToString("yyyy-MM-dd"));
                if (dateFrom != DateTime.MinValue)
                    where += string.Format(" and I.WithdrawalDate >= '{0}'", dateFrom.ToString("yyyy-MM-dd"));
                if (dateTo != DateTime.MinValue)
                    where += string.Format(" and I.WithdrawalDate <= '{0}'", dateTo.ToString("yyyy-MM-dd"));
            }
            if (activeStatus == ActivityReturnFilter.Active)
                where += string.Format(" and (I.IsActive = 1 or (I.IsActive = 0 and I.CloseDate >= '{0}'))", DateTime.Today.ToString("yyyy-MM-dd"));
            else if (activeStatus == ActivityReturnFilter.InActive)
                where += " and (I.IsActive = 0)";
            if (returnType != WithdrawalInstructionsTypeReturnEnum.All)
                where += string.Format(" and I.IsPeriodic = {0}", (returnType == WithdrawalInstructionsTypeReturnEnum.Periodic ? 1 : 0));
            if (instructionIds != null)
                where += string.Format(" and I.Key IN ({0})",
                    (instructionIds.Length == 0 ? "0" : string.Join(", ", Array.ConvertAll<int, string>(instructionIds, id => id.ToString()))));

            string orderBy = "order by A.Key", contactsJoin = "";

            if (keysOnly && sortColumn != "")
            {
                string ascendingStr = (ascending ? "ASC" : "DESC");
                sortColumn = sortColumn.ToUpper();

                string sortProperty = "";
                switch (sortColumn)
                {
                    case "KEY":
                        sortProperty = "A.Key";
                        break;
                    case "ACCOUNT_NUMBER":
                        sortProperty = "A.Number";
                        break;
                    case "ACCOUNT_SHORTNAME":
                        sortProperty = "CN.Name";
                        contactsJoin = @"left join A.bagOfAccountHolders AH
                                         left join AH.Contact C
                                         left join C.CurrentNAW CN";
                        where += " and AH.IsPrimaryAccountHolder = true";
                        break;
                    case "STATUS":
                        sortProperty = "I.Status";
                        break;
                    case "DONOTCHARGECOMMISSION":
                        sortProperty = "I.DoNotChargeCommission";
                        break;
                    case "MESSAGE":
                        sortProperty = "I.Message";
                        break;
                    case "WITHDRAWALDATE":
                        sortProperty = "I.WithdrawalDate";
                        break;
                    case "EXECUTIONDATE":
                        sortProperty = "I.ExecutionDate";
                        break;
                    case "CREATIONDATE":
                        sortProperty = "I.CreationDate";
                        break;

                    case "AMOUNT_QUANTITY":
                        sortProperty = "I.Amount.Quantity";
                        break;
                    case "ISACTIVE":
                        sortProperty = "I.IsActive";
                        break;
                    case "REGULARITY":
                        sortProperty = "R.Regularity";
                        break;
                }

                if (sortProperty != "")
                    orderBy = string.Format("order by {0} {1}", sortProperty, ascendingStr);
            }

            string hql = string.Format(@"{0}from CashWithdrawalInstruction I
                                        left join {1} I.Account A
                                        left join {1} A.ModelPortfolio M
                                        left join {1} I.Rule R {2}
                                        where (I.ExecutionDate <= '{3}') {4} {5}",
                                       (keysOnly ? "select I.Key, I.IsActive " : ""),
                                       (keysOnly ? "" : "fetch"),
                                        contactsJoin, DateTime.Today.ToString("yyyy-MM-dd"), where, orderBy);

            return session.GetListByHQL(hql, null);
        }
Example #21
0
 /// <summary>
 /// Get all system models, sorted alphabetically
 /// </summary>
 /// <param name="session">Data access object</param>
 /// <param name="assetManager">The assetManager that owns the model</param>
 /// <param name="includePublic">Include Public Models</param>
 /// <param name="activityFilter">Active Filter</param>
 /// <param name="modelName">Model Name Filter</param>
 /// <returns>Collection of models</returns>
 public static List<IPortfolioModel> GetModelsSorted(IDalSession session, IAssetManager assetManager, bool includePublic, bool includeSubModels,
                                                     ActivityReturnFilter activityFilter, string modelName)
 {
     if (assetManager != null || !LoginMapper.IsLoggedInAsStichting(session))
         return GetModelsSorted(session, getForcedAssetManagerId(session, assetManager), includePublic, includeSubModels, activityFilter, modelName);
     else
         return null;
 }
Example #22
0
        public static DataSet GetTradeableInstrumentsDDL(
            SecCategoryFilterOptions secCategoryFilter, string isin, string instrumentName,
            SecCategories secCategoryId, int exchangeId, int currencyNominalId,
            ActivityReturnFilter activityFilter)
        {
            DataSet ds = InstrumentFinderAdapter.GetTradeableInstruments(
                secCategoryFilter, isin, instrumentName,
                secCategoryId, exchangeId, currencyNominalId,
                activityFilter, true, null, "Key, Isin, DisplayIsinWithName");

            Utility.AddEmptyFirstRow(ds.Tables[0]);
            return ds;
        }
Example #23
0
        /// <summary>
        /// This method does NOT filter by the current asset manager.
        /// </summary>
        public static List<IPortfolioModel> GetModelsSorted(IDalSession session, int assetManagerId, bool includePublic, bool includeSubModels,
                                                            ActivityReturnFilter activityFilter, string modelName)
        {
            List<ICriterion> expressions = new List<ICriterion>();
            List<Order> orderings = new List<Order>();

            addAssetManagerCriterion(expressions, assetManagerId, includePublic);

            if (!includeSubModels)
                expressions.Add(Expression.Or(Expression.Eq("IsSubModel", false), Expression.IsNull("IsSubModel")));
            if (activityFilter != ActivityReturnFilter.All)
                expressions.Add(Expression.Eq("IsActive", (activityFilter == ActivityReturnFilter.Active ? true : false)));
            if (!string.IsNullOrEmpty(modelName))
                expressions.Add(Expression.Like("ModelName", modelName, MatchMode.Anywhere));
            orderings.Add(Order.Asc("ModelName"));

            return session.GetTypedList<PortfolioModel, IPortfolioModel>(expressions, orderings, null, null);
        }
Example #24
0
 public static DataSet GetTradeableInstruments(
     SecCategoryFilterOptions secCategoryFilter, string isin, string instrumentName,
     SecCategories secCategoryId, int exchangeId, int currencyNominalId, 
     ActivityReturnFilter activityFilter, bool assetManagerMappedOnly, 
     string hqlWhere, string propertyList)
 {
     using (IDalSession session = NHSessionFactory.CreateSession())
     {
         return InstrumentMapper.GetTradeableInstruments(
                         session, secCategoryFilter, isin, instrumentName,
                         secCategoryId, exchangeId, currencyNominalId,
                         assetManagerMappedOnly, activityFilter, hqlWhere)
             .ToDataSet(propertyList);
     }
 }
        public static DataSet GetMappedInstruments(int assetManagerId, ActivityReturnFilter activityFilter)
        {
            DataSet ds = null;
            IAssetManager am = null;
            IDalSession session = NHSessionFactory.CreateSession();

            if (assetManagerId == 0)
                am = (IAssetManager)LoginMapper.GetCurrentManagmentCompany(session);
            else
                am = ManagementCompanyMapper.GetAssetManager(session, assetManagerId);

            if (am != null && am.AssetManagerInstruments != null && am.AssetManagerInstruments.Count > 0)
            {
                IList<IAssetManagerInstrument> list = am.AssetManagerInstruments.ToList();
                if (activityFilter != ActivityReturnFilter.All)
                    list = list.Where(u => u.IsActive == (activityFilter == ActivityReturnFilter.Active)).ToList();
                ds = DataSetBuilder.CreateDataSetFromBusinessObjectList(
                    list.ToList(),
                    @"Key, Instrument.DisplayName, Instrument.DisplayIsin, AssetClass.Key, AssetClass.AssetName,
                    RegionClass.Key, RegionClass.RegionName, InstrumentsCategories.Key, InstrumentsCategories.InstrumentsCategoryName,
                    SectorClass.Key, SectorClass.SectorName, MaxWithdrawalAmountPercentage, IsActive");
            }

            session.Close();
            return ds;
        }