Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 274760e7

Přidáno uživatelem Jan Kohlíček před téměř 7 roky(ů)

refs #7015: Přidání dinamického odkazu pro export do CSV

Zobrazit rozdíly:

frontend/app.js
170 170
        $scope.showInfoLoading = false;
171 171
        $scope.vehicles = [];
172 172
        $scope.filterVehicles = [];
173
        $scope.urlExportCsv = null;
173 174

  
174 175
        Vehicle.query(null, function (data) {
175 176
            $scope.vehicles = data;
......
206 207

  
207 208
        let range = $scope.getRange();
208 209

  
209
        // if (!$rootScope.selectDevice || args.id !== $rootScope.selectDevice.id)
210
        //     $rootScope.selectDevice = {name: '...', street: '...', town: '...'};
211

  
212

  
213
        Device.get({
210
        let query = {
214 211
            period: range.isTime ? 'time-period' : 'day-period',
215 212
            id: args.id,
216 213
            direction: args.direction,
217 214
            dateFrom: range.fromDate.format('YYYY-MM-DD'),
218 215
            dateTo: range.toDate.format('YYYY-MM-DD'),
219 216
            timeFrom: range.isTime ? range.fromTime.format('HH:mm') : null,
220
            timeTo: range.isTime ? range.toTime.format('HH:mm') : null,
221
        }, function (data) {
217
            timeTo: range.isTime ? range.toTime.format('HH:mm') : null
218
        };
219

  
220
        Device.get(query, function (data) {
222 221
            $rootScope.selectDevice = data;
223 222

  
224 223
            $scope.renderGraphAverageSpeed();
225 224
            $scope.renderGraphNumberVehicles();
226 225

  
226
            $scope.urlExportCsv = $scope.generateUrlExportCsv(query);
227

  
227 228
            $scope.showInfoLoading = false;
228 229
        }, function (response) {
229 230
            $rootScope.selectDevice = null;
......
234 235

  
235 236
    });
236 237

  
238
    $scope.generateUrlExportCsv = function (query) {
239
        let relativeUrl = '/devices/:id/:period/csv?'.replace(':id', query.id).replace(':period', query.period);
240
        delete query.id;
241
        delete query.period;
242

  
243
        let paramsUrl = jQuery.param(query);
244
        return config.API_URL + relativeUrl + paramsUrl;
245
    };
237 246

  
238 247
    $scope.changeRange = function () {
239 248
        if ($scope.range.fromDate >= $scope.range.toDate || ($scope.range.isTime && $scope.range.fromTime >= $scope.range.toTime)) {
frontend/index.php
210 210
            <h4 class="mt-4">Počet vozidel</h4>
211 211
            <canvas id="graphNumberVehicles" class="mb-5"></canvas>
212 212

  
213
            <div class="text-center">
214
                <a class="btn btn-dark" href="{{ urlExportCsv }}" role="button">Export CSV</a>
215
            </div>
216

  
213 217
            <div class="text-center mb-2 mt-2 w-100">
214 218
                <small class="text-muted">zdroj dat: <a target="_blank" href="https://doprava.plzensky-kraj.cz">doprava.plzensky-kraj.cz</a>
215 219
                </small>

Také k dispozici: Unified diff