Финуслуги: инвестируйте в приложении
Торговля на бирже и другие инструменты
                RU

                Корзина услуг пуста

                Меню

                Корзина услуг

                angular.module('index.grid.services', []) .factory('LocalGroupSettingsFabric', function ($http) { return $http.get('/api/indices/json'); }) .factory('LocalFabric', function () { return { getFieldCollection: function (fieldSettingCollection, fieldCollection) { var fields = _.filter(fieldCollection, function (field) { return _.some(fieldSettingCollection, function (neededField) { return neededField.IssFieldId.toUpperCase() == field.name.toUpperCase(); }); }); var grouFields = []; _.each(fields, function (field) { var settingField = _.find(fieldSettingCollection, function (sett) { return sett.IssFieldId.toUpperCase() == field.name.toUpperCase(); }); if (settingField != null) { var grField = {}; grField.name = field.name; grField.title = field.short_title; grField.type = field.type; grField.sortOrder = settingField.SortOrder; grField.postfix = settingField.FieldPostfix; grouFields.push(grField); } }); grouFields = _.sortBy(grouFields, function (field) { return field.sortOrder; }); return grouFields; }, getMarketDataCollection: function (marketDataCollectionFunc, callback) { marketDataCollectionFunc.success(function (data, status) { if (data != undefined) { var marketData = data[1].marketdata; //add securities _.each(data[1].securities, function (security_data) { marketData.push(security_data); }); if (callback != null) callback(marketData); } }); }, getIndicesTree: function (groupTree, subGroupCollection, marketData, history, lang) { //find title and indices for each subgroup from settings // WEBSVC-2701 _.each(subGroupCollection, function (subGroup) { if (subGroup.IssSubGroupId === 22) { subGroup.IndexCollection = [{ Id: 16, SecId: "RGBITR", SortOrder: 0 }, { Id: 7, SecId: "RUCBITR", SortOrder: 0 }, { Id: 26, SecId: "RUMBITR", SortOrder: 0 }]; subGroup.HideButtonTitleEn = 'HIDE Clear Price indices'; subGroup.HideButtonTitleRu = 'Скрыть "ценовые" индексы'; } }); if (groupTree != null) { _.each(subGroupCollection, function (subGroup) { var subElem = _.find(groupTree.collections, function (gr) { return gr.id == subGroup.IssSubGroupId; }); if (subElem == null) return null; subGroup.Name = subElem.title; subGroup.GroupId = subElem.parent_id; if (window.page.ru(lang)) subGroup.ButtonTitle = subGroup.ShowButtonTitleRu; else { subGroup.ButtonTitle = subGroup.ShowButtonTitleEn; } subGroup.IndicesCollection = _.filter(groupTree.collections, function (ind) { return ind.parent_id == subElem.id; }); _.each(subGroup.IndicesCollection, function (subIndex) { if (subIndex.id == 40) { f = ""; } subIndex.SubIndicesCollection = _.filter(groupTree.collections_securities, function (ind) { return ind.collection_id == subIndex.id && (_.some(marketData, function (num) { return num.SECID.toUpperCase() == ind.secid.toUpperCase(); }) || _.some(history, function (num) { return num.SECID.toUpperCase() == ind.secid.toUpperCase(); })); }); subIndex.RowCount = _.size(subIndex.SubIndicesCollection); }); subGroup.IndicesCollection = _.filter(subGroup.IndicesCollection, function (ind) { return ind.RowCount > 0; }); subGroup.RowCount = _.size(subGroup.IndicesCollection); subGroup.ShowAll = false; }); subGroupCollection = _.filter(subGroupCollection, function (subGroup) { return subGroup.RowCount > 0; }); subGroupCollection = _.sortBy(subGroupCollection, function (subGroup) { return subGroup.SortOrder; }); var groupCollection = []; _.each(_.groupBy(subGroupCollection, function (subGr) { return subGr.GroupId; }), function (group) { if (group[0] != null) { var groupId = group[0].GroupId; //find group data from ISS collection var treeGroup = _.find(groupTree.collections, function (gr) { return gr.id == groupId; }); if (treeGroup != null) { group = { Id: treeGroup.id, Name: treeGroup.title, SubGroupCollection: group }; } groupCollection.push(group); } }); return groupCollection; } else { return "no data"; } } }; });

                Уважаемые посетители сайта, чтобы отправить свое предложение или задать вопрос, используйте форму обратной связи.

                Мы ценим Ваше мнение и обязательно рассмотрим Ваши вопросы и в случаях, когда это возможно, подтвердим получение Письма и предоставим письменный ответ.

                В случае наличия обоснованных и существенных претензий, Биржа совместно с Экспертными Советами примет меры по разработке и реализации соответствующих изменений.

                На сайте осуществляется обработка пользовательских данных с использованием Cookie в соответствии с Правилами использования cookies. Оставаясь на сайте, Вы соглашаетесь с условиями Правил. Вы также можете запретить сохранение Cookie в настройках своего браузера.