Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.03.2017, 10:24
Новичок на форуме
Отправить личное сообщение для AntonEvseev Посмотреть профиль Найти все сообщения от AntonEvseev
 
Регистрация: 16.03.2017
Сообщений: 6

Фильтрация по дате
Есть такой код. Я вывожу ссылками список игр при клике на которые выводится информация по игрокам в таблице.
Код:
<div class="row">
            <div class="col-xs-12 col-sm-12 col-md-3">
                <ul ng-repeat="game in games">
                    <li><a ng-click="sort(game.Name)">{{game.Name}}</a></li>
                </ul>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-9">
                <table ng-show="onTable" ng-table="tableParams" class="table table-bordered table-hover" style="width:500px;margin-left:auto;margin-right:auto;">
                    <tr>
                        <th ng-show="onId">#</th>
                        <td>Name</td>
                        <th>MaxScore</th>
                        <th>GamerDate</th>
                        <th ng-show="onId">Id</th>
                        <th ng-show="onId">Game</th>
                    </tr>
                    <tr ng-repeat="gamer in gamers | filter : filters">
                        <td ng-show="onId">{{ gamer.Id }}</td>
                        <td>{{ gamer.Name }}</td>
                        <td>{{ gamer.MaxScore }}</td>
                        <td>{{ gamer.GamerDate | date :'yyyy-MM-dd' }}</td>
                        <td ng-show="onId">{{ gamer.Game.Id }}</td>
                        <td ng-show="onId">{{ gamer.Game.Name }}</td>
                    </tr>
                </table>
            </div>
        </div>
    </div>
var app = angular.module('app', []);
app.controller('AppController', function ($scope, $http, GamersService, GamesService) {

    $scope.onId = false;
    $scope.onTable = false;
    $scope.gamers = null;
    $scope.filters = {};
      
    $scope.sort = function (value) {
        $scope.onTable = true;
        $scope.filters = value;
    }
   
    GamersService.GetAllRecords().then(function (d) {
        $scope.gamers = d.data;
    }, function () {
        alert('Ошибка соединения с базой данных !!!');
    });

    GamesService.GetAllGames().then(function (d) {
        $scope.games = d.data;
    }, function () {
        alert('Ошибка соединения с базой данных !!!');
    });
    
});


app.factory('GamersService', function ($http) {
    var fac = {};
    fac.GetAllRecords = function () {
        return $http.get('/api/Leader/');
    }
    return fac;
});

app.factory('GamesService', function ($http) {
    var fac = {};
    fac.GetAllGames = function () {
        return $http.get('/api/game/');
    }
    return fac;
});

Мне надо добавить табы к таблицам, чтобы фильтровать по столбцу GamerDate в разрезе день/неделя/All time. Как это сделать?

Последний раз редактировалось AntonEvseev, 16.03.2017 в 10:35.
Ответить с цитированием
  #2 (permalink)  
Старый 16.03.2017, 13:40
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

AntonEvseev,
нужен тестовый пример. У нас нет доступа к твоему /api/Leader/, /api/game/. Или поиск angular grid tuttorial.
Ответить с цитированием
  #3 (permalink)  
Старый 16.03.2017, 14:02
Новичок на форуме
Отправить личное сообщение для AntonEvseev Посмотреть профиль Найти все сообщения от AntonEvseev
 
Регистрация: 16.03.2017
Сообщений: 6

Пока для примера могу написать какими данными я инициализирую бд
Gamer g1 = new Gamer { Name = "Carson", MaxScore = 2345, GamerDate = DateTime.Parse("2017-03-09") };
            Gamer g2 = new Gamer { Name = "Meredith", MaxScore = 1345, GamerDate = DateTime.Parse("2017-02-09") };
            Gamer g3 = new Gamer { Name = "Arturo", MaxScore = 3454, GamerDate = DateTime.Parse("2017-03-02") };
            Gamer g4 = new Gamer { Name = "Gytis", MaxScore = 1000, GamerDate = DateTime.Parse("2017-03-09") };
            Gamer g5 = new Gamer { Name = "Yan", MaxScore = 222, GamerDate = DateTime.Parse("2017-03-09") };
            Gamer g6 = new Gamer { Name = "Peggy", MaxScore = 4567, GamerDate = DateTime.Parse("2017-03-01") };
            Gamer g7 = new Gamer { Name = "Laura", MaxScore = 100, GamerDate = DateTime.Parse("2017-03-05") };
            Gamer g8 = new Gamer { Name = "Nino", MaxScore = 4567, GamerDate = DateTime.Parse("2017-03-02") };
            Gamer g9 = new Gamer { Name = "Cool", MaxScore = 4567, GamerDate = DateTime.Parse("2017-03-07") };
context.Gamers.Add(g1);
            context.Gamers.Add(g2);
            context.Gamers.Add(g3);
            context.Gamers.Add(g4);
            context.Gamers.Add(g5);
            context.Gamers.Add(g6);
            context.Gamers.Add(g7);
            context.Gamers.Add(g8);
            context.Gamers.Add(g9);
            context.Gamers.Add(g10);
Game ga1 = new Game
            {
                Id = 1,
                Name = "World of Tanks",
                Gamers = new List<Gamer>() { g1, g2, g3, g4, g5, g6, g7, g8, g9, g11, g12, g13, g14, g15, g16, g17, g18, g19, g20, g21, g22, g23 }
            };
            Game ga2 = new Game
            {
                Id = 2,
                Name = "Counter Strike",
                Gamers = new List<Gamer>() { g28, g27, g26, g25, g24 }
            };

API возвращает объекты в JSON из бд.
Полную структуру JSON ответа напишу вечером.
Ответить с цитированием
  #4 (permalink)  
Старый 16.03.2017, 23:20
Новичок на форуме
Отправить личное сообщение для AntonEvseev Посмотреть профиль Найти все сообщения от AntonEvseev
 
Регистрация: 16.03.2017
Сообщений: 6

Вот в таком формате приходят данные
[
  {
    "Id": 1,
    "Name": "Carson",
    "MaxScore": 2345,
    "GamerDate": "2017-03-09T00:00:00",
    "GameId": 1,
    "Game": {
      "Gamers": [
        {
          "Id": 2,
          "Name": "Meredith",
          "MaxScore": 1345,
          "GamerDate": "2017-02-09T00:00:00",
          "GameId": 1
        },
        {
          "Id": 3,
          "Name": "Arturo",
          "MaxScore": 3454,
          "GamerDate": "2017-03-02T00:00:00",
          "GameId": 1
        },
        {
          "Id": 4,
          "Name": "Gytis",
          "MaxScore": 1000,
          "GamerDate": "2017-03-09T00:00:00",
          "GameId": 1
        },
        {
          "Id": 5,
          "Name": "Yan",
          "MaxScore": 222,
          "GamerDate": "2017-03-09T00:00:00",
          "GameId": 1
        },


http://pixs.ru/showimage/leaderpng_8637067_25525381.png

Последний раз редактировалось AntonEvseev, 16.03.2017 в 23:34.
Ответить с цитированием
  #5 (permalink)  
Старый 17.03.2017, 00:01
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

AntonEvseev, это из какого языка конструкции такие?
new Gamer { Name = ..., MaxScore = ..., GamerDate = ... }
new List<Gamer>() { ..., ..., ... }
Ответить с цитированием
  #6 (permalink)  
Старый 17.03.2017, 09:29
Новичок на форуме
Отправить личное сообщение для AntonEvseev Посмотреть профиль Найти все сообщения от AntonEvseev
 
Регистрация: 16.03.2017
Сообщений: 6

c#
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация эллементов через select VlAdZiO Элементы интерфейса 0 05.11.2016 15:41
Прибавить к дате 7 дней tzarek Общие вопросы Javascript 12 13.02.2015 16:56
определение дня недели по дате xber9 jQuery 1 29.10.2013 19:44
Нажатие по дате в календаре срабатывает только со второго клика afr0 Events/DOM/Window 4 31.10.2012 13:39
Сортировка и фильтрация в селекторе amt779 jQuery 1 08.07.2011 03:09